This chapter presents examples and best practice guidelines for FLACS-CFD. The examples also include simulations that require special variants of FLACS-CFD, such as FLACS-Fire.
There are several ways to create, for example, a door opening in a wall or vessel. This section discuss two different approaches to this problem.
In summary, the main rule is that the grid should fit the vent opening. Then both methods are equivalent. If you have to choose (the vent opening and grid resolution simply do not fit, no matter what you do), then use the approach that will give you a vent opening that is as close as possible to the real one while reducing the number of partially porous cells/faces to a minimum. It is recommended to carry out a small sensitivity study to estimate the effect of the geometry representation.
7.1.1.1 Option 1
Make the wall with three boxes.
The advantage of this method is that there is no left difference operation which might be difficult to create and maintain. The disadvantage is that the opening area may be adjusted by the porosity calculator to match the grid. If the boxes are expanded, then the opening area, which is critical for explosion pressures, may be wrong. Therefore, if this method shall be used, then it is important to make sure that the grid matches the door properly. Alternatively, a pressure relief panel can be used, but again, the opening area must be prescribed properly relative to the grid.
7.1.1.2 Option 2
Define the wall and door as two flat boxes, and subtract the door from the wall with the help of a left difference operation.
This method will give the exact correct vent area (or rather: the correct blockage ratios based on the opening area), irrespective of the grid resolution, since the area of the opening does not get changed due to adjustment to grid lines. There are examples of simulations where high turbulence has been seen outside a vent opening defined in this way. For situations with circular vent openings/panels this method can be used (combined with a wall at least two grid cells thick) to ensure proper representation of the vent opening.
With the second method, you can get sub-grid contributions around the vent opening if it does not hit the grid properly, and subsequently too high turbulence generation and therefore too high pressures.
When a left difference is used to define (part of) a flow domain and the boundary of the “hole” made by the left difference object is exactly on the domain boundary, then special care has to be taken to make sure the domain boundary is closed. Otherwise, depending on the boundary condition, flow can occur across a boundary that was meant to be closed.
An example of this might be defining the lower domain boundary exactly on the floor of a cellar which has been defined by a left difference box in the ground. An extra zero-thickness box can be used to block the flow at the domain boundary coinciding with the border of the left difference operation.
In FLACS v10.8 two significant improvements have been made to left difference operations:
1. Left difference operations can be added anywhere in the primitive list.
2. Left difference operations can consist of any node type, including other left differences.
The first point means that by using the Mark command a left difference can be created in the middle of the primitive list. Prior to this improvement left difference operations could only be created at the end of the primitive list between the last two nodes. An example of this feature can be seen in figure below.
Figure 7.1: Using the Mark command to create left difference
In this figure the Mark command have been used to mark a cylinder in the middle of the primitive list. The marked cylinder will be used as the solid part when adding a left difference. In addition to marking the cylinder the first box in the primitive list have been selected. The selected box will be used as the minus part when adding a left difference. Adding a left difference at this point will subtract the box from the cylinder and add the left difference operation to the end of the primitive list.
Left difference operations can consist of all node types, including named unions and left differences. In the figure below a nested left difference operation is shown.
Figure 7.2: Nested left difference operation
Nesting left difference operations means that it is possible to create geometric objects that it was impossible to model in previous versions of FLACS.
In FLACS-CFD, the scenario variable GROUND _ ROUGHNESS defines the aerodynamic roughness that characterizes the terrain surface throughout the simulation domain. Aerodynamic roughness has a strong effect on velocity and turbulence close to the terrain level. This means that, for releases that occur or develop close to the ground, the resulting extension of the flammable cloud is very sensitive to the ground roughness. flacscfd adopts a modified form of the wall functions at the terrain surface to account for ground roughness (see Rough wall boundary). To activate the ground-roughness-based wall functions at the terrain surface, a terrain file must be created. This can be done in CASD either by importing a DEM file or by converting a geometric object to terrain (see section Convert). This latter option can be used to define a flat terrain at the bottom of the simulation domain from a box created in CASD's geometry editor.
In FLACS-CFD, the computational mesh is composed of cubic or rectangular grid cells (or control volumes) defined by vertical and horizontal grid lines, i.e., a single-block rectilinear grid. The mesh spacing can be varied in any of the Cartesian directions. However, it is not currently possible to fit the mesh to curved or inclined walls or objects and so these are modelled using stepped walls and/or sub-grid models.
Simulations calculated at finer grid resolutions, or over larger domains, take longer to run, see figure below, and so the resolution should be chosen such that a sufficiently accurate prediction is achieved within an acceptable time frame. It is recommended that simulations that are expected to run for days are first calculated for a coarser grid to check the setup and scenario definition (even if the configuration of the
coarser grid does not meet the recommendations outlined in the grid recommendations table).
^^ -8 oi」os」ll nd9 / (S」H nd。)
Figure 7.3: How the computational cost increases with grid resolution for gas explosion simulations from some experiment campaigns in our validation database. Lines are fitted to data from simulations of individual experiments (colours show experiments from the same campaign). All the plotted simulations were calculated using the same Gexcon HPC.
7.3.1.1 Grid domains
FLACS-CFD requires the simulation domain to extend beyond the region(s) of interest to avoid boundary effects impacting on results. For this reason, the grid generally comprises one or more high resolution domains, referred to as core domains, and a so-called stretched domain, which extends from the core domain boundaries to the total domain boundary. Cells in the stretched domain may increase in size as the distance from the core domain edge increases and the total domain boundary is approached.
In addition to the core and stretched domains, some scenarios require an area of local grid refinement, where very high resolution is required to resolve a specific feature, and these areas are referred to as refinement regions.
For pool scenarios, the horizontal and vertical dimensions of the core domain are considered separately and an extra domain, the vertical pool region, is required between the bottom of the pool and the base of the core domain to ensure sufficient resolution for the evaporation calculations. Figures to illustrate the different parts of the grid needed for pool scenarios are provided in Grid domains for pool scenarios.
Large differences in size for neighbouring cells can cause problems for FLACS-CFD, so it is recommended that these are avoided and the Smooth tool in CASD can be helpful for creating a smooth transition between
sizes, see the figure below for an example of this.
Figure 7.4: Smoothing the grid around a leak.
7.3.1.2 Geometry considerations for the grid
7.3.1.2.1 Positioning objects
The edges of large objects (objects that occupy more than 1.5 grid cells, e.g., walls and decks) should be aligned with the grid, and ideally positioned so that their edges fall on grid lines. Grid planes for an existing grid can be adjusted using the Add , Position and Smooth options in the Grid information menu in CASD.
If an imported geometry is not aligned with the XY grid axes, the Auto-align geometry can be used to automatically align it.
Porosity is calculated for each grid cell and if the edges of large objects are not positioned on grid lines then undesirable artifacts may result, such as “leaking corners” or enlarged/shrunken vent areas. If a large surface does not sit on a grid plane, then secondary objects may create porosity profiles that lead to inappropriately increased turbulence at the deck surface, e.g., beams may be considered in the calculations to be on top of the deck instead of below it. It is not necessary for small objects to be aligned with the grid unless they are the dominant structures in a scenario, e.g., in a geometry with only a few objects.
For some complex scenarios, it may not be possible to align all large objects with the grid and still comply with the grid recommendations below. In such cases, it is recommended that large objects which are closest to the ignition are aligned, and other objects are aligned as far as is possible. The extent of any misalignment of large objects with the grid should be considered when interpreting simulation results.
7.3.1.2.2 Pipes
The inner diameter of angles and bends should be increased slightly when modelling pipes using a cylinder minus primitives. The solid wall around “minus primitive holes” must have a thickness of at least one full grid cell to ensure no leakage through the wall (two cells may be better when a cylinder is “subtracted” from another cylinder). A check to confirm that the predicted flow behaviour is as expected is recommended.
7.3.1.2.3 Multiple geometry objects
When the geometry is projected onto the grid, it is important to ensure that there are no partial openings
where two geometry objects (e.g., pipes or vessels) are joined. This should be checked by calculating and verifying the porosities after creating the grid, see the Porosities menu in CASD.
For more information on defining geometry and positioning it appropriately for the grid, see Representing geometry in the Geometry chapter.
The recommendations in the table below describe the optimum configuration of the grid according to the scenario characteristics. These are based on validation against experiment results and on an analysis of the calculations in FLACS-CFD. For many scenarios, it is not possible to meet all the recommendations, for example orientating the grid so that all leak directions are aligned with grid axes. In such cases, the recommendations should be followed as closely as possible and a grid sensitivity study may be helpful.
Multiple recommendations in the table apply to any individual scenario and the first column can be used to determine whether each specific recommendation is applicable. Some recommendations are based on information that may not be readily available, such as the initial high pressure region for a blast. The notes below the table provide references to sections of this manual where methods for estimating these are provided.
Once configured, some aspects of the grid configuration can be checked using the grid checking option in CASD.
7.3.2.1 Grid sensitivity
Grid sensitivity studies are recommended for dispersion simulations (see below). For explosions, it may be beneficial to perform grid sensitivity simulations if the guidelines result in resolutions that are too fine for practical simulation (e.g., because of memory resources or because cells smaller than 1 cm are not recommended). Our validation for explosions is based on resolving the gas cloud with 15 cells, and simulations generally converge to the experimental results in this region (although they may diverge at finer resolutions for some scenarios). Numerically, the code does not fully converge with increasing resolution, primarily due to interactions between the structured cartesian grid, the geometry, and porosity. Our validation data are used to tune the models in FLACS-CFD so as to achieve our most accurate results when the clouds is resolved with 15 cells. This resolution allows simulations to be calculated within engineering timescales, while being sufficiently refined that small changes in the resolution generally do not result in large changes to the simulated data (for example, moving from 15 cells to 16 or 17 cells). Grid resolutions in the region of that which resolves the cloud with 15 cells therefore constitute a region of local convergence in most cases. In some cases, sensitivity could be looked at over the range of about 14 to 17 cells to determine if more extreme grid sensitivity is seen for a particular scenario.
7.3.2.2 Dispersion scenarios
Gas dispersion is affected by several parameters, including air and gas densities and velocities, and the size, position and complexity of any geometry in the scene. It is important that the grid resolution is sufficient to resolve all expected gradients. Sensitivity to the grid resolution varies between scenarios and so a sensitivity study is generally recommended. However, this is not always practical and several validation studies have
therefore been carried out to determine the recommendations in the table.
7.3.2.3 Using dispersion model output to simulate an explosion
Different grids are appropriate for dispersion and explosion simulations and so results from a dispersion simulation should be dumped and regridded before being used to simulate an explosion (see Combined dispersion and explosion simulations).
❶ These checks ensure that a grid meets the recommendations.
They do not check that the grid is as coarse as possible (i.e., a coarser grid may also meet the recommendations).
|
When this applies |
Recommendation |
Notes |
|
ALWAYS |
Grid does not extend unnecessarily below an impermeable ground surface (and ground covers whole of the horizontal domain). | |
|
ALWAYS |
Cell size at all ROI(s)+ < 5 m. |
This ensures that all values are meaningful (further recommendations below will result in a smaller value for most scenarios). This may need to be increased to avoid an impractically high number of grid cells for dispersion and fire simulations that cover a very large domain. Cell sizes of up 20 m have been used successfully for simulations with ROI(s)+ that are 500 m from the source. |
|
ALWAYS |
Stretch factor** < 1.2. |
Stretch factors++ beyond 1.2 have not been widely tested and are not generally required. However, it may be necessary to use a slightly higher stretch factor++ for a dispersion scenario which otherwise requires an impractical number of grid cells, or where the grid has been adjusted to fit a wall. It is not anticipated that results will be adversely affected provided the factor remains below 1.4, but this has not been widely tested. |
|
ALWAYS |
At least 3 cells between the total domain boundary and any ROI+. |
This makes it less likely that values are impacted by any unphysical boundary effects. |
|
ALWAYS |
Monitor points should not be in the same grid cell as a solid wall (unless the wall is thicker than a single grid cell or forms the simulation boundary, e.g., the ground). |
The wall may snap to a cell wall that means the MP is on the other side of it from what was intended. Note that MPs may be placed in a cell that is bounded by a wall (or panel) with thickness = 0 if the wall (or panel) is positioned on a grid plane. |
|
ALWAYS |
Monitor points should be in unblocked cells. |
Ideally, monitor points should be in porosity=l cells. If this is not possible, then we should try to maximise the porosity of the MP cell. If neighbouring cells have higher porosity, then we should move the MP so that it is just inside a neighbouring cell. If neighbouring cells also have low porosity, then a finer grid resolution may be needed to capture any space around the MP. |
|
Explosion, blast and fire |
Cell size in all domains > 1 cm. |
Cell sizes smaller than this have not been widely tested are there is a possibility that the subgrid models may fail, in particular the sub-grid model for premixed combustion (explosions) may severely overpredict burning velocities for very fine resolutions. Where a scenario is particularly fine-scaled (or where grid refinement is needed around a very small feature, e.g., a small point leak), then cells may be smaller than this, however it is recommended that results are checked carefully and if any artifacts are present that indicate model breakdown, then a coarser resolution should be used. Finer resolutions have been tested for some fire scenarios and accuracy has not been adversely impacted. |
|
Blast |
Monitor points should not be cells with porosity = 0.5 |
FLACS-Blast treats porosities as binary, so porosity=0.5 cells are ambiguous. |
|
Any scenario with an ignition/explosive location |
Ignition should not be on a grid line and should be in an unblocked cell. |
See note above about recommendation for MPs in unblocked cells. For blast scenarios, the explosive location may be in a partially blocked cell but an initial simulation should be used to check that the high temperature and pressure region do not partially penetrate the wall. |
|
Any scenario with an ignition |
Ignition should not be in the same grid cell as a solid wall. |
See note above about about the same recommendation for MPs. |
|
Explosion |
Aspect ratio** for cells in core domain* < 2. |
The longest cell side should be no more than twice the length of the shortest cell side. |
|
Blast |
Aspect ratio** for cell sides in the horizontal plane in the core domain* = |
If Z is vertical, then the lengths of the X and 丫 sides of cells in the core domain should be equal. Cells may be elongated in the Z-direction by up to a factor of 2 if the wave propagation in this direction is not of interest (otherwise cells should have an equal length in X, Y and Z). |
|
Gas explosion with vents+++ |
Minimum distance from vents+++ to core domain* boundary:
| |
|
Dust explosion with vents+++ Gas explosion when an external explosion is likely |
Minimum distance from vents+++ to core domain* boundary:
|
Recommended for all dust explosions to ensure that any external explosion is sufficiently resolved. For a gas explosion, an initial coarse-resolution simulation may help to determine whether an external explosion is likely. The possibility of external explosion should always be considered when the fuel mix includes hydrogen. |
+ ROI: region of interest. This is any monitoring point or region where values calculated in FLACS-CFD are of interest.
++ The stretch factor is the length of a cell in one direction divided by the length of the neighbouring cell in the same direction.
+++ Vents are openings that may or may not be covered by panels (so panels are treated as vents).
The core domain(s) are region(s) of the grid where higher resolution is required (e.g., close to a leak, where there is a flame, the gas cloud for an explosion,..). Note that some further refinement is required around point leaks and immediately above an evaporating pool surface. See Grid domains in the manual for more information on naming parts of the grid.
** The aspect ratio is the ratio of the length of one side of the grid cell to the length of another side.
** * The vertical pool region is a region of extra grid refinement immediately above the pool surface for pool scenarios (dispersion and fire). See Grid domains for pool scenarios in the manual for the different grid regions for pool scenarios.
See the "Jet flame shape,f section in the Technical reference chapter for a method to estimate the jet flame shape plus lift-off (implemented in the automatic grid refinement in CASD). This ideal flame shape does not account for congestion or impingement, so it is recommended to use an initial coarse-resolution simulation to estimate the flame dimensions for congested scenarios.
See the MMaximum pool area and flame shape for pool scenarios" section in the Technical reference chapter for a method to estimate pool flame shape and the maximum area for a spreading pool. This ideal flame shape does not account for congestion or impingement, so it is recommended to use an initial coarse-resolution simulation to estimate the flame dimensions for congested scenarios.
The jet utility can be used to estimate the expanded leak area (implemented in the leak wizard in CASD and described in the Release source modelling section of the Utility programs chapter) or, alternatively, follow the section * Steps when the jet utility program is not employed, in the manual.
The Technical Reference chapter provides a method to estimate the high pressure region where shock waves greater than 1 barg are experienced following a blast.
This estimate does not account for reflections from surfaces (other than the ground), which may increase the blast volume. It may be necessary to extend the core domain beyond this minimum extent for these cases.
Alternatively, an initial coarse-resolution simulation can be used to estimate the distance travelled by the wave. The Technical Reference chapter provides a method to estimate the initial high pressure region.
Attention:
Pool and dispersion scenarios with non-zero windspeed require a secondary core domain with the same extent and resolution as the primary core domain described in the table. The secondary core domain should be located with its centre offset from the primary core domain centre by a distance equal to the pool radius, in the wind direction. For an area leak, the offset distance should be the distance from the leak centre to the leak edge in the wind direction. This is not needed for jet fire scenarios since the flame shape estimate that is used to set the core domain accounts for windspeed.
Some of the recommendations in the table should be adjusted slightly for the special case of modelled-entrainment leaks, as described in the Entrainment functionality section.
There are at least three different ways to perform a combined dispersion and explosion simulation in FLACS-CFD:
• Run a dispersion simulation where ignition time and position are set before you start the simulation. If the fuel concentration at the ignition time and position is outside the flammable region there will be no explosion. With this approach it is not possible to use the WIND condition because it enforces a fixed velocity, which is not applicable in the explosion (cf. Wind boundary condition).
• Run a dispersion simulation, look at the results and decide where and when to have the ignition, rerun the dispersion simulation with ignition time and position set. Since you have selected a proper ignition time and position there will be an explosion, but you have spent a lot of extra time to rerun the complete
dispersion simulation. Also with this approach it is not possible to use the WIND condition because it enforces a fixed velocity, which is not applicable in the explosion (cf. Wind boundary condition).
• The preferred method is to run a dispersion simulation, create simulation dump files at selected time instants, look at the results and restart the simulation from the dump file with time closest to the desired time of ignition. This gives you the flexibility to select several ignition positions without having to rerun the dispersion simulations. You can monitor the progress of the dispersion and decide to create dump files also after the simulation has been started (use the cc-file). With this approach it is possible to use the WIND condition during the dispersion simulation and to switch it off (change to EULER) for the explosion simulation.
Create a directory for the example and copy the files from
/usr/local/Gexcon/FLACS-CFD_22.2/doc/examples/ex04_dispersion/*00001*
as described in section Creating the work directory. Start the FLACS-CFD RunManager.
In the RunManager, use Add Directory to find the directory that contains the geometry files. Use RunManager T Tools T CASD (or click the FLACS-CFD pre-processor icon). Open the file 200001.caj (and ignore any error messages that appear). The geometry is a representation of a full-scale process module. The dimensions are28 m 义 12m 义 8 m.
7.5.2.1 Scenario
7.5.2.1.1 Monitor points and output variables Define a regular pattern of 16 monitor points inside module (X=3, 9, 15, 21, Y=2, 6 and Z=2, 6). This can quickly be done by using the 'Arrange in grid' functionality found on the context menu which is opened by right clicking with the mouse in the monitor points window.
Measure FMOLE and UVW at monitor points by selecting all monitor points, right click and select 'Edit'.
Measure FMOLE, ER and VVEC for 3D-output (see the Single field 3D output section). Remember to hold the CTRL key while selecting multiple variables for output.
Figure 7.5: Specification of monitor points
7.5.2.1.2 Simulation and output control Set NPLOT=-1, and DTPLOT=2.5. The CFLC number can be increased due to grid refinement, see the discussion below and section Simulation and output control for additional details. With refinement factor equal 5 and multiplying with default CFLC value 10 for dispersion simulations, set CFLC=50 (running this specific example simulation, CFLC=100 was used to speed up calculations even more). Set default value for dispersion simulations CFLV=1 (running this specific example simulation, CFLV=2 was used to speed up calculations even more). Set the total simulation time to be Maximum time=75 (see Maximum time).
7.5.2.1.3 Boundary Conditions Define WIND inflow from XLO and YLO, 2 m/s diagonally (use Wind Direction (1,1,0)), use Wind buildup time = 0, NOZZLE at other boundaries. The Wind wizard can be used to set the WIND boundary condition quickly.
Figure 7.6: Specification of the WIND boundary condition
7.5.2.1.4 Initial conditions Set the initial turbulence low for stability (CHARACTERISTIC VELO-CITY=0.1, RELATIVE TURBULENCE _ INTENSITY=0.1, TURBULENCE _ LENGTH SCALE=0.01).
For the logarithmic wind profile, set the Reference height to 10, and Ground roughness to 0.01. The Pasquill class must be F. Leave the other parameters unchanged.
Figure 7.7: Specification of initial conditions.
7.5.2.1.5 Gas composition Specify natural gas (91% Methane, 7% Ethane and 2% Propane) and set ER0 = 1e30 (pure gas release). The fuel region size should be zero (no gas cloud initially).
7.5.2.1.6 Leak In the leak menu, specify a single leak at the position X=6m, Y=5.05m, Z=2.38m and with the direction +X (use Open sides). Start the leak at T=10 seconds, for a duration of 40 seconds. The start time is chosen so that the wind field can reach steady state.
Double-click on Outlet. Use a mass release rate of 4 kg/s through a 0.02 m2 leak area. Set the initial turbulence for the leak: relative turbulence intensity = 0.2, turbulence length scale = 10% of leak diameter = 0.014, Temperature = 20 degC, leave the direction cosines as (0, 0, 0).
7.5.2.1.7 Ignition Specify an ignition time of 9999 seconds (an arbitrary high value after the end of the simulation so that FLACS-CFD does not try to ignite the gas cloud). Leave the ignition position unspecified. Right-click into the scenario menu and enable the gas monitor region menu.
7.5.2.1.8 Gas monitor region Define the gas monitor region to cover the module: position (0,0,0) m and size (28, 12, 8) m.
7.5.2.2 Grid
7.5.2.2.1 Quick grid: simulation volume and grid resolution Start the Quick grid tool from the Grid menu. Set the core domain to coincide with the module, i.e., minimum (0,0,0) m and maximum (28,12,8) m. Set the cell size to 1.333 m. Since the grid is uniform, this will lead to 21 x 9 x 6 grid cells in the core domain. Let the stretched domain start at (-32,-28,0) m and end at (60,40,32) m. Leave the maximum stretch factor at 1.2.
7.5.2.2.2 Grid refinement The grid needs to be refined around the leak to avoid strong dilution, see grid recommendations. This can be done using the automatic grid refinement tool in CASD, or can be done manually following the steps below. The expanded leak area is 0.02 m2. The grid cell containing the leak (the 'leak cell'), and one cell either side of it, should each have an area of (1.25 x 0.02)0.5 = 0.1581m2 in the plane of the leak. The leak cell may be elongated in the leak direction, provided that it's length in this direction is not more than 5 times it's length in the other directions. So, in the leak direction, the cell length should be between 0.158 m and 0.790 m (automatic grid refinement will set it to 0.158 m). This should be applied to the cell that contains the leak, and also to two cells in front of it. Cells in the 3 x 3 block of cells at the leak are now much smaller than their neighbouring cells, so the grid spacing should be smoothly increased until it matches the spacing for the surrounding grid, as shown below:
1.33 m 0.1581 m 1.33 m
Figure 7.8: Sketch of the grid refinement.
Creating the refinement region
The leak is at Y = 5.05 m and grid lines should be created (3/2) × 0.1581 = 0.237 m from this in both directions, at 4.813 and 5.287 m. In the Grid menu in CASD, set the grid direction to Y and use Add to add these two grid lines. Select these two grid lines using CTRL and arrow keys (a message in the yellow box below the CASD geometry window shows which grid lines are selected).
Smoothing from the refinement region
Select Region from the Grid menu and enter 3 to create three grid cells of size 0.1581 m. Now smooth the grid between the two significantly different cell sizes. Select grid lines between -1.333 m and 4.975 m so that grid cells a distance of 4-5 cells from the refined cells, and one refined grid cell, are selected. This defines the region over which the grid will be smoothed (the size of the cell at each end of the smoothing region will remain unchanged by the smoothing, see Smooth). The grid spacing should not change by more than 20% from one grid cell to the next (see grid recommendations); if this cannot be achieved within the
selected smoothing region, then the region must be extended further from the refinement region, i.e., to Y < -1.333 m. The module edges must remain positioned on grid planes, so grid lines are required at Y = 0 and 12 m. If the smoothing has caused these lines to be moved, then grid planes in the smoothed region should be manually adjusted using Move from the Grid menu. Repeat these smoothing steps to smooth between the maximum extent of the refinement region and the ambient grid in the positive Y direction. All dimensions
The steps described above for refinement in the Y-direction should also be followed to refine the grid in the X- and Z-directions. No smoothing is required between the refinement region and the ambient grid in the negative Z-direction because the refinement region in this direction is bounded by the ground. Smoothing should be carried out following the steps described above in the X-direction, and in the positive Z-direction. Following all refinement and smoothing, Information can be selected from the Grid menu to check that the maximum size difference between neighbouring cells does not exceed 20%.
Figure 7.9: Grid in Y-direction
7.5.2.3 Runtime simulation control file (cc-file)
The last step before starting the simulation is to make a cc-file. In the FLACS-CFD RunManager, click on the dispersion job, click parameters, and edit cc-file and type the following (use capital letters and an extra line shift at the end of the cc-file):
NDUMP 1
TDUMP 40
NDUMP 2
TDUMP 55
This gives 2 dumps at 40 and 55 seconds that can be used to restart the calculations.
3 RunManager - FLACS-CFD 222
□
File Tools Options Help Language
I B
Directory
Job number
Status
Disk Space
Add directory
▼ C:\Fl_ACS\Ex amp les\ex 04_d i spersi on\ Q
0 200001
、C:\FI_ACS\Examples\ex03_explosion\ □
□ 110101
533.04 KiB (Estimated)
Actions on checked jobs
Parameters
7.59 MiB (Estimated)
■ Calculate porosity
1.30 MiB (Estimated)
处 Simulate
X Abort simulation
/、Suspend/Stop simulation
Enter FLAGS Parameters
Resume simulation
▼ C:\Fl_ACS\Examples\ex01_explosion\ □
□ 100001
BLOCKED: | 0|
ABORTED: | 0|
Connect to FLACS C oud...
□ Setup file
Figure 7.10: Defining the cc file for dispersion simulation
NDUMP 1
TDUMP40
NDUMP 2
TDUMP 55
7.5.2.4 Simulation
Start the simulation by clicking on the job and clicking simulate in the FLACS-CFD RunManager.
7.5.2.5 Results
The most important result from this simulation is the gas cloud distribution. It can be studied in Flowvis. Cut plane plots of the gas cloud at times 40 s and 55 s are shown below. The concentrations are plotted in the flammable range for natural gas (i.e. between 5 % and 15 % natural gas).
Figure 7.11: Gas cloud distribution in the flammable range at time 40 seconds.
Figure 7.12: Gas cloud distribution in the flammable range at time 55 seconds.
In explosion simulations, one can compute the effect of igniting the realistic gas cloud that was calculated in a dispersion simulation as described above. To this end, copy the FLACS-CFD input files to a new job number (or use CASD to save the job with a new number). Dump the dispersion results at two discrete times: 40 s and 55 s. The gas cloud at 40 s is used to start an explosion simulation.
7.5.3.1 Scenario and Grid
Use Flowvis to find a suitable ignition position e.g., make a contour plot (2D cut plane) of FMOLE or ER in the leak plane (Z = 2.4 m) to find regions where the concentration is close to stoichiometric (this is expected to lead to the worst-case explosion pressure). In this case, the figure above suggests an ignition position of (23, 4.5, 2.4) m. Certain changes need to be made to the scenario and the grid to make them appropriate for an explosion simulation. The following steps should be followed:
1. Change the grid to create a core domain with uniform cells that covers the module and the flammable part of the gas cloud. Follow the grid recommendations to set the size of cells in the core domain based
on the flammable gas cloud volume that is output from the dispersion simulation. Cells between the core domain boundary and the edge of the total simulation domain should be stretched by a factor of 1.2. Note that the total simulation domain may have to be extended to meet the grid recommendations. If the scenario is opened in CASD, then these grid changes can be made using Quick grid from the Grid menu.
2. Simulation and Output Control: Change Maximum time to -1, NPLOT=50, CFLC=5, CFLV=0.5. Change DTPLOT back to -1.
3. Change output variables (both scalar time and 3D): Use P and PROD (remove the other variables).
4. Change ignition position (see above) and ignition time (40.05 s).
5. Save and calculate porosities.
After following the steps above, click on the job in the RunManager (if it is not visible, click on rescan directory). Click Parameters and define a cc-file. The cc-file should contain only one line (remember to include an extra line at the end):
NLOAD 1
The last step before running the explosion scenario is to generate a new rd-file for starting the calculation based on the dispersion job. This transfers the required information from the dispersion grid (job number XXXXXX) to the explosion grid (job number ZZZZZZ).
Linux: In a terminal window, type:
> run rdfile rdXXXXXX.n001 rdZZZZZZ.n001
(make sure that you are in the correct directory).
Windows: In a command window, type:
> rdfile rdXXXXXX.n001 rdZZZZZZ.n001
Start the simulation by clicking on the job and clicking simulate in the RunManager.
Use Flowvis to analyse the results and generate plots. A scalar time plot of pressure at all monitor points is shown below. The maximum pressure of 1.3 barg occurs at t = 40.34 s at monitor point 1.
Figure 7.13: Overpressures at monitor points as a result of the explosion of the dispersed gas cloud at t=40 seconds
Figure 7.14: Geometry for pool spread simulation
It is recommended to start out with an empty directory for storing the files.
Linux:
Make a distinct directory (DIRECTORY NAME) in which you perform the exercise:
> mkdir DIRECTORY_NAME
Move into this directory: > cd DIRECTORY_NAME
Copy the geometry files (notice the space before the ”.”).
> cp /usr/local/Gexcon/FLACS-CFD_22.2/doc/examples/ex02_pool/* .
Start up the FLACS-CFD RunManager: > run runmanager
Windows:
1. Make a distinct directory in which you perform the exercise: Open the file browser navigate to where you want to create the new directory, right-click and choose T New T Folder.
2. Copy files from C: \Program Files\Gexcon\FLACS-CFD_22.2\doc\examples\ex02_pool
3. Start the FLACS-CFD RunManager by clicking the desktop icon, or go to Start Menu T AllPrograms T Gexcon T FLACS-CFD 22.2 T FLACS-CFD RunManager.
In the RunManager, use Add Directory to find the directory that contains the geometry files. Use RunManager → Tools → CASD (or click the FLACS-CFD pre-processor icon). Open the file 600000.caj (and ignore any error messages that appear). The geometry is a simple model of an LNG terminal. Consider the following case:
• Leakage of LNG with composition 95% Methane, 4% Ethane, and 1% Propane.
• Leakage rate starts at 300 kg/s for 10 seconds, then it decreases linearly to zero during the next 10 seconds. The source of the leak is located on the deck at position x= 28 m, y = 0 m.
• Wind: 3 m/s at 10 meter above sea from south. Neutral atmospheric conditions.
• Results of interest are the size, shape and location of the flammable gas cloud and shape, location and size of the pool.
Remarks:
600000.caj is the case that should be used for learning purposes. Case 600001 contains the same geometry, but it is made ready for simulation.
First, a Simulation Volume must be defined. The wind comes from the south, aligned with the Y axis, and the undisturbed wind field must be set at a certain distance upstream of the LNG terminal. One is most interested in the gas cloud on the terminal, but also in high concentrations further downstream should be captured. In the X direction, the domain should cover the area the pool can spread and the volume the cloud may fill in the cross-wind direction. In the Z-direction, the simulation volume should include the surface, the LNG terminal and some space above. Note that LNG vapour is heavier than air.
In the current example, a manual grid setup is demonstrated (i.e. without the Quick Grid tool). The following Simulation Volume is used: xmin= -50 , xmax= 90, ymin=-60, ymax=120, zmin=-1, zmax=40. In the X-direction, initialise a 1 meter grid: choose Grid → Region → 140. Fine grids give more accurate results and it is recommended to use a grid spacing of about 1 meter or less in the X- and Y-direction for pool simulations in the areas where the pool will spread. It may not be easy to forecast where the pool will spread, but some reasoning may be possible when the leak position and obstacles are known. A 0.5 meter grid is recommended in the near-field of the leakage location (X=28). Use CTRL + arrow keys to define the region 22 m – 32 m and set the number of control volumes of the selected region to 20. Smooth the grid, see Smooth. Stretch the grid for X > 70 m and X < -30 m.
Change to Y-direction (Grid → Direction → Y direction) and generate a 1 m grid (Grid → Region → 180). To get a 0.5 m grid around the leak location, use CTRL + arrow keys to define the region -5 m – 5 m and set the number of control volumes to 20. Stretch the grid towards the boundaries for Y > 30 m and Y < -30 m. Change to Z-direction (Grid → Direction → Z direction) and generate a 1 m grid (Grid → Region → 41) Just above the pool, a 0.25 m grid is desirable. Select the region Z = 10 – 13 m and increase the number of control volumes from 3 to 12 in this region. Then smooth the grid. Stretch the grid above the geometry (Z=17 m) towards the top boundary.
The grid now has about 460000 control volumes and the porosities should be calculated. Remember to save the scenario.
To create a pool scenario select 'Simulation type' Pool in CASD.
7.6.4.1 Single field 3D output
Use MOUSE+LEFT to select POOL D, FUEL, FMOLE, T, and VVEC. This will give 3D field outputs for the pool depth, that can be used to visualise the pool, FUEL and FMOLE which give the mass fraction and volume fraction (concentration) of the vapour, T, which is the gas temperature, and VVEC, which is the velocity vector.
7.6.4.2 Simulation and output control
Set
• Maximum time=100 (significantly longer than the release period)
• CFLC=20 (increased because of grid refinement)
• CLFV=1 (standard for dispersion calculations)
• DTPLOT=5.0
7.6.4.3 Boundary conditions
This is a dispersion scenario with wind at 3 m/s from south and neutral atmospheric conditions. Therefore YLO is the inflow boundary and YHI is the outflow boundary. The flow is parallel to the X boundaries and the ZHI boundary and WIND can be used for these boundaries, too.
1. EDIT the XLO boundary and set XLO="WIND", WINDSPEED=3 and
WIND DIRECTION=(0,1,0).
2. COPY the XLO to XHI, YLO, and ZHI.
3. EDIT YHI boundary and set YHI="NOZZLE".
The settings for the boundary and initial conditions for the wind field can alternatively be produced with the wind wizard: in the Scenario Settings click on Run Wizard and choose Wind Wizard. The setup for the current case is as shown in the figure below.
Figure 7.15: Wind wizard settings for the pool spread case.
7.6.4.4 Initial conditions
To get a wind field of 3 m/s at 10 meter height and neutral atmospheric boundary conditions, set:
• CHARACTERISTIC VELOCITY=3
• GROUND ROUGHNESS = 0.001 (water, flat surface)
• REFERENCE HEIGHT = 10
• PASQUILL CLASS = "D" (Neutral, turbulence parameters are calculated by FLACS-CFD)
7.6.4.5 Gas composition and volume
1. Edit the volume fraction according to the LNG composition; METHANE=95, ETHANE=4, and PROPANE=1.
2. Set EQUIVALENCE RATIO=(1E+30,0)
7.6.4.6 Ignition
No ignition is wanted. Set TIME OF _ IGNITION larger than TMAX, for example
TIME OF IGNITION=9999.
7.6.4.7 Gas monitor region
Define the gas monitor region to cover the volume above the deck (i.e. X in (-35,35) m, Y in (-25,25) m, and Z in (11,17) m).
If you are a relatively new FLACS-CFD user then it is recommended to use the Pool section of the scenario menu in CASD (set the ”Simulation type” under ”Scenario Settings” to ”Pool”, or right-click in the scenario menu to enable the Pool section). The menu, and the settings and keywords used to configure a pool simulation, are described here.
The following setup is used in the example:
Figure 7.16: Pool setup in the scenario menu (left), pool leak data (right).
The above settings correspond to the following setup of a spreading pool with non-uniform pool temperature in the POOL section in the cs-file. (The POOL section in the cs-file contains more parameters but the scenario menu in CASD only shows a subset of these unless Show advanced is enabled by right-clicking in the view.)
|
Property name |
Property ID |
Value |
Description |
|
Non spreading |
STATIC POOL |
0 |
This scenario models a spreading pool, and not a non spreading pool |
|
Uncoupled pool fire model |
POOL FIRE UNCOUPL |
D0 |
Enable to use the uncoupled pool fire model instead of the coupled one |
|
Start time |
START POOL |
5 |
Pool begins 5 seconds after the simulation starts in order to establish the wind field |
|
Initial mass |
MASS POOL 0 |
0 |
No initial pool mass |
|
Mass rate |
DMDT |
300 |
Pool leakage rate [kg/s].This value is overridden by the pool leakage file |
|
Property name |
Property ID |
Value |
Description |
|
Position |
POSITION |
28 0 20 |
(X, Y and Z position of the centre of the leakage area. Z position is used to search downwards until solid ground with space above is found, that is PORZ(K) >= 0.5 and PORZ(K+1) < 0.5. In this case, Z should be located above the geometry. If a spill on the sea is considered, Z should be located just above the sea surface, see Setting the pool position. |
|
Inner radius |
RAD I |
0 | |
|
Outer radius |
RAD O |
2 |
Radius of the leakage area [m]; to get a circular shape for the spill, it is recommended to set RAD-0 > 3Ax. In this case is RAD_0 = 4Ax. |
|
Ground temperature |
T SOIL |
293 |
Ground temperature [K] |
|
Heat sun |
HEAT SUN |
400 |
Heat from the sun [W/m2] |
|
Surface roughness |
ROUGH L |
0.005 | |
|
Ground type |
POOL GROUND |
”CONCRETE,WATER[:: 1 0.5]” |
- Concrete everywhere except for the Z-region (-1 m – 0.5 m), where there is water |
The pool leakage file cl000000.POOL overrides DMDT from the cs000000.dat3 file, see pool leakage file. The time in cl000000.POOL is relative to START POOL in cs000000.dat3. A constant release rate (300 kg/s) for 10 seconds and then a linear decrease in the release rate during the next 10 seconds is defined by:
’POOL LEAK FILE’
2
’TIME [s]’ ’DMDT [kg/s]’ 0.0300.0
The data for the pool leak file can also be entered in CASD: right click in the scenario menu and enable the Pool leak menu, which allows to enter the rates (right-click in the menu to enter new lines), see the screenshot above.
1. To activate the FLACS-CFD variant with models for pool spread, define RunManager → Parameters → FLACS-CFD version = pool.
2. Select case.
3. Simulate
The most important result is the gas cloud distribution. It is also important to plot the pool shape, pool mass and evaporation rate in order to verify the source term and to ensure that the pool spreads as expected. In the figures below, volume plots are used to visualise the pool and the gas cloud. In addition to the case described above, a release on the sea at the same X and Y position has been considered. Pools are plotted for depths in the range 1 - 20 mm and gas concentrations above LFL/2 are shown. It is recommended to turn off trilinear interpolation (Plot Specification → Trilinear) when plotting POOL D.
X(m)
Job=000000. Var=POOL_D (m). Time= 74.996 (s). X=-48 : 73, Y=-48 : 48, Z=2 : 19 m
Job=000000. Var=FMOLE (m3/m3). Time= 74.996 (s).
X=-48 : 73, Y=-48 : 48, Z=-0.5 : 19m
Figure 7.17: Pool spread on deck. Pool (left) and LFL/2 gas cloud (right).
Z(m)
Z(m)
A
20-
Job=100001. Var=POOL_D (m). Time= 29.999 (s).
X=-48 : 73, Y=-48 : 48, Z=0.3 : 31 m
陋
Figure 7.18: Pool spread on the sea. Pool (left) and LFL/2 gas cloud (right).
20-
Job=100001. Var=FMOLE (m3/m3). Time= 29.999 (s).
X=-48 : 73, Y=-48 : 48, Z=-0.8 : 31 m
In the figures below, pool mass, pool area, and evaporation rate per square meter are shown for pool spreading on concrete (deck) and pool spreading on water (sea).
Figure 7.19: Pool evaporation on concrete.
Figure 7.20: Pool evaporation on the sea.
The pool model is two-dimensional in space and a crucial point is the detection of the underlying solid surface seen by the pool model. At present, the surface on which the pool can spread is detected by searching downwards from a vertical position, Z ,for all X and Y positions. A solid surface is detected if:
1. PORZ(K) < 0.5 , and
2. PORZ(K+1) > 0.5
This means that if Z is located in the open, then the first cell with PORZ < 0.5 below Z determines the surface elevation.
It follows from the inequalities above that walls and bunds must be at least 0.5AX wide in order to be found by the underlying-solid-surface detection algorithm. An example where bunds not are detected is shown in Figure Bunds not detected. Possible solutions are to increase the bund thickness and to refine the grid.
Figure 7.21: Bunds not detected because PORZ>0.5.
If Z is given a high value, the pool sees equipment etc. as solid obstacles even though there is a gap underneath the equipment where the pool can spread, see Gap under tanks. The solution is to set a lower value for Z, for instance just above the green surface.
Figure 7.22: Gap under tanks not detected.
It should be mentioned that if no underlying solid surface is detected by searching downwards, then an upwards search is carried out from Z. The top of tank 1 in Figure Gap under tanks will be detected for a low Z value.
Difficulties may be encountered when there are several gaps, for instance if there are several decks. In the example in Figure Unwanted depression and Figure No gap, there is no obvious value for Z. If Z is located above the tanks, the pool will not flow under tank 1. If Z is just above the surface, an unwanted depression is generated instead of an obstacle at tank
1. The best solution is probably to set a large value for Z, which was done in the best practice example.
Terrain seen by pool model
Terrain seen by pool model
Figure 7.24: No gap between tank 2 and deck.
Warning:
The pool model does not detect pool depth correctly when there are no grid planes beneath the lowest surface in the geometry. The solution to this problem is to extend the grid below the lowest surface on which the pool can occur.
FLACS-CFD automatically calculates properties for mixtures of species known to it, and mixtures including hydrocarbons from methane up to dodecane can be defined as fuel in FLACS-CFD (see the section on Gas composition and volume).
Attention:
C5 to C10 alkanes have the same laminar burning velocity as butane; C11 and C12 should not be included in a combustible mixture. Cf. the section on potential problems with heavy hydrocarbons.
A simplification of the definition of the combustible mixture can be obtained by replacing C5+ by C4 (butane) in the way it was suggested before C5+ were available in FLACS-CFD, namely by conserving the number of C's, e.g., 1 mole of C8 becomes 2 moles of butane, since the oxygen consumption (and FLACS-CFD interpolation rules) depends on the number of Cs. This approach underlies the same limitations mentioned above. In any case, one has to assess how much of the heavy hydrocarbons one wants to include, since at some stage they will remain liquid and rain out if the pressure is low (and/or the fraction of lighter components is low).
As far as inerts are concerned, water vapour should have an effect in between what is seen for CO2 and N2 as an inert. For CO2 typically 4 % in the final explosive mixture (including air) would reduce pressures by a factor of 2, whereas roughly 8-9 % added nitrogen will be required. One could therefore assume that approx. 6 % added water vapour in the final gas-air mixture would have a similar effect, reducing explosion pressures by a factor two. The background humidity in air, which can of course vary with temperature and climate, is not considered when doing explosion modelling, i.e. FLACS-CFD is calibrated for a typical relative humidity level (and variations from this may be part of uncertainty in predictions).
Note that nitrogen cannot be chosen as a gas. If one wants to specify N2 in a fuel mixture, the easiest way will be to redefine the AIR so that your final composition has the correct amount of nitrogen.
For dispersion simulations, nitrogen can be replaced with a mixture of other gases (CO or ETHYLENE has the same molecular weight) or a user-defined gas can be defined.
It is recommended to start with an empty directory for storing the files.
Linux:
Make a distinct directory (DIRECTORY NAME) in which you perform the simulation:
> mkdir DIRECTORY_NAME
Move into this directory:
> cd DIRECTORY_NAME
Copy the geometry files (notice the space before the ”.”).
> cp /usr/local/Gexcon/FLACS-CFD_22.2/doc/examples/ex05_fire/* .
Edit/verify the cs-file with your favourite editor.
> vi cs000004.dat3
Start up the FLACS-CFD RunManager (assuming that you have set up an alias for the run script):
> run runmanager
Windows:
1. Make a distinct directory in which you perform the exercise: Open the file browser, navigate to where you want to create the new directory, right-click and select T New T Folder.
2. Copy the files from
C:\Program Files\Gexcon\FLACS-CFD_22.2\doc\examples\ex05_fire\*00 0 01* (00001 means all files containing the text ”00001”).
3. Start the FLACS-CFD RunManager by clicking the desktop icon, or go to Start Menu T All Programs T Gexcon T FLACS_v22.2 T FLACS-CFD RunManager.
• First, a simulation volume must be defined, see Simulation volume.
• As for other scenarios, refine the grid around leaks; far from leaks a coarse grid is sufficient. It is recommended to follow the grid recommendations and to do grid sensitivity studies for fire simulations in the areas close to leaks.
• Calculate the porosities.
• Save the grid specification to the scenario.
To create a fire scenario select the corresponding simulation type (fire) in the CASD Scenario menu. Enable the write all variables check-box to get all fire related single field variables.
7.8.3.1 Monitor points
Define the monitor point direction (required to calculate incident radiative flux) along with the position and output variables. The monitor point direction is specified as a vector and determines the heat flux radiometer direction.
7.8.3.2 Single field scalar time output
Choose the fire-related variables (SOOT, H2O, CO2, CO, VFSOOT, VFH2O, VFCO2, ABSCOF, RADSRC, QRAD, QCONV, Q, QDOSE) required for the analysis to view the results for the relevant monitor points.
7.8.3.3 Single field 3D output
Left-click to choose TWALL, SOOT, H2O, CO2, CO, VFSOOT, VFH2O, VFCO2, ABSCOF, RADSRC, QRAD, QCONV, Q, QWALL, QDOSE. This will give 3D field output of the variables required for fire simulations.
7.8.3.4 Simulation and output control
Right-click into this scenario menu and enable show advanced. Then apply the following settings:
• CFLC=20 (Increase according to grid refinement)
• CLFV=2 (Standard for fire calculations)
• Enable the Wall functions check-box.
• Enable the Heat switch check-box to take heat transfer into account.
7.8.3.5 Boundary conditions
The default boundary condition for FLACS-Fire simulations is NOZZLE. The boundary condition WIND can be used to model a specified wind field at selected boundaries.
7.8.3.6 Initial conditions
To obtain better stability, set the initial turbulence to be low:
• RELATIVE_TURBULENCE_INTENSITY= 0 (default value k = 10-3 ifRTI=0)
• TURBULENCE_LENGTH_SCALE = 0 (default value £ = 10-3 if TLS=0)
Leave the other parameters unchanged.
7.8.3.7 Gas composition and volume
• Edit the volume fraction according to the fuel composition.
• Set EQUIVALENCE RATIOS=(1E+30,0).
7.8.3.8 Leaks
Always use the leak wizard to specify leaks. There are two ways to represent leaks: point leaks and area leaks.
• In the leak wizard, specify the leak's position (X,Y,Z).
• Enter the leak size (zero for a point leak and non-zero positive values for area leak).
• Specify the leak direction; see Open sides.
• Select the leak type (diffuse, entraining, jet, air, suction, fan, inert).
• Set the leak rate to be manual (known leak conditions), steady state, or time dependent (uses the jet utility program).
• On the next page, select the area leak shape and profile (not applicable for point leaks).
• Depending on the setting for the leak rate, more input may be required.
According to the grid recommendations, the grid should be refined around the leak. Keep in mind that only the grid cell containing the leak and one neighbouring cell on each side needs to be refined and that the grid spacing should be smoothly increased to the prevailing grid spacing. For coupled pool fires, a fine grid is required in the vicinity of the pool surface to anchor the flame, cf. the sections on LNG Pool Fire, Pool spread simulation and Coupled pool fires.
Typical evaporation rates for some of the species in the FLACS-CFD database can be found in the section on Source term modelling for pool fires. For uncoupled pool fires these values may be used to mimic an evaporation pool, by using them as leak rates of an area leak. Another choice is to employ the coupled pool fire model. Here the evaporation rate is calculated by the pool model using a coupling with the radiative heat transfer from the flame to the pool.
7.8.3.9 Ignition
For a fire simulation, you must specify the location and size of the ignition source and also the time and duration for the ignition.
7.8.3.10 Radiation
This sub-menu allows you to select from the available radiation models and specify their parameters (see radiation scenario).
7.8.3.11 Pool fire
In this menu the use of radiative heat transfer to the pool can be chosen and the threshold for the radiative heat transfer can be set. For pool fires in general the FIRESWITCH should be set to 2 under Combustion settings.
FLACS-CFD can model uncoupled and coupled pool fires:
• In an uncoupled pool fire it is assumed that there is no feedback from the pool fire on the evaporation (e.g., burning) rate. It is therefore required to define a uniform evaporation rate as input. In FLACS-CFD, uncoupled pool fires are modelled using either a fixed evaporation rates or basic empirical correlations. Typical evaporation rates for some of the species in the FLACS-CFD database can be found in the section on Source term modelling for pool fires. The uncoupled pool fire model is only suitable for pool fires where the assumption of a uniform fixed evaporation rate holds, i.e. only in relatively open areas.
• In a coupled pool fire, the evaporation (e.g., burning) rate is calculated based on the heat radiation from the fire and from the substrate. This will be more accurate, especially in confined areas or where the evaporation rate is not uniform or unknown. In FLACS-CFD, both the non-spreading and spreading coupled pool fires can be modelled. For the non-spreading pool model, the DMDT setting (i.e. the mass rate inserted uniformly over the initial pool area) is not taken into account and the pool can only burn its initial mass.
Whether a pool is modelled as coupled or uncoupled, it is recommended to use FIRESWITCH=2.
7.8.3.12 Combustion
This sub-menu allows you to select one of the available combustion models. The default and recommended choice is the Eddy Dissipation Concept (EDC). As the EXTINCTION option is still under development it should be deactivated. Set the FIRESWITCH to 2 for both jet and pool fires.
7.8.3.13 Smoke/Soot
This setting allows to select an appropriate soot model. The default and recommended choice is the Formation-Oxidation model.
7.8.3.14 Conduction
The conduction model in FLACS-Fire is under validation. It is recommended not to use the conduction model in this version.
To start the FLACS-Fire simulation use the following commands:
Windows:
Start the simulation in the RunManager by marking the job and clicking simulate.
Linux:
Start up the FLACS-Fire simulation (on your local computer):
> /usr/local/Gexcon/FLACS_v22.2/bin/run flacs version fire 000004
If a stack overflow problem occurs see how to Increase the stack size on Linux.
This section presents various test cases for FLACS-Fire.
7.8.5.1 SINTEF impinging jet fire Problem description:
The SINTEF Impinging jet fire (Wighus & Drangsholt, 1993) from high pressure leakages is representative of a severe hazard on offshore platforms and in onshore process plants. The experiments were undertaken to get better knowledge of the effects of an impinging jet fire regarding heat load and the erosive effect from high temperature and a velocity jet.
The propane jet enters horizontally into a box-like target, standing at an angle of 60 or 90 degrees to the jet axis. The dimensions of the box are: width W = 1.5m, height H = 1.5m, and depth D = 0.45m. The jet axis is positioned centrally at 1/2 or 1/4 H, and at distances of L=1.0m, 1.5m, or 2.5m from the wall of the box. A pipe with a diameter of 278.0mm was mounted across the front of the box in three of the tests, at 1/2 or 3/4 of the box height.
Table 7.2: Summary of SINTEF Impinging jet
|
Configurations |
SINTEF impinging jet |
|
Dimensions of the box |
W=1.5 m, H=1.5 m, D=0.45 m |
|
Fuel |
Propane |
|
Jet velocity |
260 m/s |
|
Jet distance |
2.5 m |
|
Jet Height |
0.75 m |
|
Jet angle |
90 degree |
Computational details:
In the Figure below the geometry configuration, for the SINTEF impinging jet fire case is shown, including the grid. The number of grid cells used is 57,330. The total number of rays fired is 108.
Figure 7.25: Calculation domain and grid distribution
Grid:
• Dimensions of the computational domain (m): Xmin
=-5.0,
Xmax
= 5,
Ymin
= -5.0,
Ymax
= 5.0,
Zmin = -0.5,
Zmax
= 10.0
• Total number of cells: 57,330
• Size of grid cells (at the leak location): 200 x 41 x 41 mm
Monitor points:
MONITOR_POINTS
|
INSERT 1 |
0.02 |
0 |
0.375 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 2 |
0.1 |
0 |
0.75 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 3 |
0.02 |
0 |
1.125 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 4 |
0.02 |
0 |
1.47 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 5 |
0.415 |
0 |
1.47 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 6 |
0.01 |
-0.1 |
1.125 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 7 |
0.415 |
-0.1 |
1.52 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 8 |
0.01 |
0 |
1.125 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 9 |
0.01 |
0.1 |
1.125 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 10 |
0.9 |
0 |
0 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 11 |
0.9 |
0 |
0.15 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 12 |
0.9 |
0 |
0.3 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 13 |
0.9 |
0 |
0.45 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 14 |
0.9 |
0 |
0.6 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 15 |
0.9 |
0 |
0.75 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 16 |
0.9 |
0 |
0.9 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 17 |
0.9 |
0 |
1.05 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 18 |
0.9 |
0 |
1.2 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 19 |
0.9 |
0 |
1.35 |
|
DIRECTION |
0 |
0 |
0 |
|
INSERT 20 |
0.9 |
0 |
1.5 |
|
DIRECTION |
0 |
0 |
0 |
EXIT MONITOR_POINTS
SINGLE_FIELD_SCALAR_TIME_OUTPUT
NT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
NQRAD 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
EXIT SINGLE_FIELD_SCALAR_TIME_OUTPUT
Numerical parameters:
• Simulation duration: 20 s
• CFLC = 20, CFLV = 2 (defaults)
• Compressible solver (advanced settings, default)
Boundary conditions:
• NOZZLE type boundary conditions for all boundaries (default)
Initial conditions:
• Standard initial conditions in FLACS-CFD
Leaks:
• Type of leak: point jet leak
• Number of leak points: 1
• Direction: -X
• Total Leak Area: 0.000685943 m2 (effective diameter=29.55 mm)
• Mass Flow rate: 0.3 kg/s
• Relative turbulence intensity: 0.1 (10 %)
• Turbulent length scale: 0.002955 m (∼10% D)
• Temperature: 36.14℃
Radiation:
Regarding radiation modelling with the Discrete Transfer Method (DTM)
• keep the defaults for Radiation model (Discrete Transfer Method),
• set Radiation start to When Ignited
• keep the default for Radiation start ramp (0)
• set Emissivity: 0.8
• keep the defaults for Absorption coefficient model (”DANISH-COUPLED-WSGGM”), Constant scattering coefficient (”0”), DTM loop max (”25”), DTM tolerance (”0.001”), DTM frequency: iteration period (”100”), DTM frequency: time period (”-1”), DTM ray distribution (”Staggered”),
• set DTM number of rays: 100,
• keep the defaults for DTM verbose (0), DTM full flux (0), DTM buffer size (”-1 0.05 -1”)
• keep the far-field model defaults for far field radiation (1), far field shadow (1)
• keep the DTM domain constraints: Automatic
Combustion:
• Combustion model: ”EDDY DISSIPATION CONCEPT (EDC)”
Soot:
• Soot Model: Formation - Oxidation
Leaks:
• Conduction type: NO CONDUCTION
Results:
The figures below shows flame temperature and heat flux at box like target for the SINTEF impinging jet fire case. .
Figure 7.26: 3D plots of temperature in SINTEF impinging jet fire case with default settings
Figure 7.27: 3D plots of total heat flux
Figure 7.28: 3D plots of radiative heat flux
Figure 7.29: 3D plots of convective heat flux
Discussion:
• The results show 3D flame temperature and heat flux distribution on the target.
Problem description:
This large-scale experiment consists of an LNG pool on the sea surface (Raj, 1979; Schneider, 1979; Schneider, 1980). Measurements and observations were done for radiative heat flux, burn rate, flame geometry, and flame speed. Other large-scale experiments have also been performed, both on water and land (Luketa-Hanlin, 2006). A principal difference between LNG pool fires on land and water is the height of the flame, which is about a factor of two greater on water than on land. The reported flame length in the experiment was between 25-55 meters.
• Leakage of LNG, with composition 100% methane, on the sea modelled as ajet area leak.
• The leakage rate starts at 0.353 kg/s and increases to 35.3 kg/s during the first second, then it stays at 35.3 kg/s for the next 99 seconds (total simulation time 100 seconds). The centre of the leak is located at position x= 0 m, y = 0 m and z = 0 m. The leak has a diameter of 15 m. The reported evaporation rate of fuel from the sea surface is between 0.18 and 0.495 kg/(m2 s). In this example a value of 0.2kg/(m2 s) was chosen.
• There is no wind field.
• The results of interest are the size of the flame and radiation levels.
Grid:
First a simulation volume must be defined. There is no wind field in this simulation, hence the domain in the XY-plane should be equally spaced around the leak. In the X- and Y-direction, the domain should cover the area of the pool surface plus twice the pool diameter to each side of the area covering the pool. In the Z-direction, the simulation volume should include 6-7 times the diameter of the pool. The following simulation volume is used in this example: xmin= -45 , xmax= 45, ymin=-45, ymax=45, zmin=0, zmax=100. Finer grids give more accurate results (cf. Coupled pool fires for grid guidelines) and it is recommended to use a grid spacing smaller than 1 meter in the X- and Y-direction in the area of the leak. Use square cells. It is not easy to know in advance how high and wide the flame will develop, so in order to avoid problems on the boundaries, the simulation volume should be made sufficiently big (see above for guidance). A pool fire will have so-called puffing. To resolve this, the numerical grid needs to be sufficiently fine (with a too coarse mesh the flame will have a more cylindrical shape).
In this example, a grid can be chosen as follows: In the X- and Y-direction, initialise a 0.5 meter grid. From the boundary of the leak area surface (Z=0), stretch the grid to the boundaries. For the Z-direction, start with a grid spacing of 0.5 meters and stretch the grid from Z=50 meters. Keep a maximum grid spacing of 2 meters to the upper boundary. The grid has now about 590000 control volumes and the porosities must be calculated. Remember to save the scenario.
Simulation and output control
• Simulation duration: 100 s
• CFLC = 20, CFLV = 2 (defaults)
• Compressible solver (advanced settings, default)
Boundary conditions:
• NOZZLE type boundary conditions for all boundaries (default)
Initial conditions:
• Standard initial conditions in FLACS-CFD
Gas composition and volume
• Methane 100% (volume fraction 1)
Ignition
Set an ignition volume with dimension 10∗10∗20 meters in X-Y-Z direction at the centre of the XY-plane and from Z=0.
Leaks and leak file
Set up an area leak with a diameter of 15 meters, with the leak pointing upwards. Gaussian profile and elliptical shape, 0.2kg/(m2 s).
Radiation:
Regarding radiation modelling with the Discrete Transfer Method (DTM)
• keep the defaults for Radiation model (”Discrete Transfer Method”), Radiation start (”Immedi-ately”), Radiation start ramp (”0”),
• set Emissivity: 0.8
• keep the defaults for Absorption coefficient model (”DANISH-COUPLED-WSGGM”), Constant scattering coefficient (”0”), DTM loop max (”25”), DTM tolerance (”0.001”), DTM frequency: iteration period (”100”), DTM frequency: time period (”-1”), DTM ray distribution (”Staggered”), DTM number of rays (”100”), DTM verbose (”0”), DTM full flux (”0”), DTM buffer size (”-1 0.05 -1”)
Combustion:
• Combustion model: ”EDDY DISSIPATION CONCEPT (EDC)” (default)
• FIRESWITCH=2
Soot:
• Soot Model: ”NONE”
Conduction:
• Conduction type: ”NO CONDUCTION” (default)
Results:
The figure below shows a temperature plot from the simulation of the U. S. CG China Lake tests. The results shown here account for radiative heat loss. The published flame height is between 25 and 55 meters, and the model results are in the same range.
Run:000002
Ivar: T |Time: 61995.65 ms (62)|
Figure 7.30: Temperature plot of the U.S. CG China Lake tests LNG pool fire.
Discussion:
• Good agreement between the measurements and numerical results is obtained.
• The results are sensitive with respect to grid refinement. A too coarse grid will not catch the physics of the puffing.
The default model in FLACS-CFD for pool fires is the “uncoupled pool fire model”. In the uncoupled pool fire model it is assumed that there is no feedback from the pool fire on the burning rate. A uniform burning rate is instead prescribed based on empirical correlations. The uncoupled pool fire model is most suitable for pool fires where the assumption of a uniform fixed evaporation rate holds, i.e. in relatively open areas, and for pools that remain approximately circular. For other cases and especially for under-ventilated scenarios, it is recommended to use the coupled pool fire model.
For this model, FLACS-CFD prescribes the burning rate based on the mixture, the effective pool diameter, and wind conditions. The table below lists the burning rates used based on (Rew, P.J., Hulbert, W.G. (1996)). If the burning rate is not tabulated, FLACS-CFD employs the Burgess correlation from the Yellow Book for predicting the mass burning rates of uid flammable materials under ambient conditions (see EFFECTS user and reference manual) The ultimate values are then corrected for both the pool size and wind speed (Bubbico et al. (2016)).
The table below lists typical evaporation/burning rates for a selection of flamable liquids for large pool fires, based on (Rew, P.J., Hulbert, W.G. (1996)).
Table 7.3: Summary of typical evaporation/burning rates for selected liquids (Rew,1996)
|
Material |
Mass burning rate [kg/(m∧2 s)] |
|
Acetone |
0.038 |
|
Benzene |
0.085 |
|
Butane |
0.11 |
|
Crude oil |
0.051 |
|
Diesel |
0.054 |
|
Ethane |
0.141 |
|
Ethanol |
0.02 |
|
Material |
Mass burning rate [kg/(m∧2 s)] |
|
Fuel oil |
0.034 |
|
Gasoline |
0.067 |
|
Heptane |
0.081 |
|
Hexane |
0.075 |
|
Hydrogen (liquefied) |
0.161 |
|
JP4 |
0.056 |
|
JP5/kerosine |
0.063 |
|
LEG |
0.14 |
|
LNG/Methane |
0.141 |
|
LNG/Methane (water) |
0.282 |
|
LPG/Propane |
0.118 |
|
LPG/Propane (water) |
0.256 |
|
Methanol |
0.02 |
|
Naptha/Pentane |
0.095 |
|
Octane |
0.081 |
|
Toluen |
0.066 |
|
Xylene |
0.09 |
The main difference when running the coupled pool fire model in FLACS-Fire is the way evaporation is modelled. In the uncoupled pool fire model the evaporation rate is either read off from a table or approximated via an empirical correlations. For the coupled pool fire model the pool model calculates the evaporation from the pool by a heat transfer balance including heat from the flame. The pool setup parameters must be specified correctly. Ignition must be set later than the startup time for the pool if persistent ignition is not active, that is DURATION OF IGNITION=0.
The results are grid sensitive. A fine grid in the vicinity of the pool surface is required to anchor the flame properly. It is recommended to do some grid sensitivity studies for the area close to the pool surface to check that the physics of the fire is captured. In the example pool spread simulation a sensible grid is described. When running with the coupled pool fire model it is recommended to use cubical cells close to the pool surface. The mixing region above the pool, in the z-direction, is sensitive to the grid resolution. About 1 m above the surface the grid may be stretched to bigger cells, but keep cell sizes within 1 m. Above the assumed flame height the grid may be stretched further.
The computational domain should be at least two pool diameters to each side of the leak in the XY-plane. If a wind field is applied, then the domain should be at least 4 pool diameters in the downwind direction. In the vertical direction, the domain should be at least 6 pool diameters. Since pool fires result in puffing (oscillatory behaviour of the flame), a fine grid is needed to capture this effect. It is not easy to predict what the grid spacing should be. It depends on what one is trying to accomplish. A mesh sensitivity study should always be performed; start with a relatively coarse mesh, and then gradually refine the mesh until the results show small differences. A general recommendation is to use equal-sized grid cells in the horizontal plane covering the pool area and at least 10-15 cells across the characteristic diameter of the flame D∗ (Lin, 2010):
Q
Pg cpTg "g
(2/5)
D∗
(7.1)
Here, Q [kJ/s] = pool fire heat release, p^ [kg/mA3] = ambient air density, c「[kJ/kg*K] = constant pressure heat capacity of the fuel, T∞ [K] = ambient air temperature, and g [m/s∧2] = gravitational acceleration.
The spreading pool model allows the spill to move in the XY-plane. The non-spreading and spreading pool models may be used for the same study given that the spreading pool is restricted from moving by including extra obstructions in the geometry (bund).
The coupled pool-fire model has been validated for fixed size pool fires. Moving combusting spills is possible to model through pool model 3, but this is still under validation, hence no recommendations for the grid are given here.
As most of the (jet) dispersion guidelines for the time step and grid also apply for jet fire scenarios, it is straightforward and quick to convert an existing FLACS-CFD dispersion scenario to a FLACS-Fire scenario by the following steps:
1. Open the existing dispersion scenario.
2. Change template to Fire in CASD.
3. Accept reverting to template defaults [this resets Heat Switch, CFL numbers etc. to the template defaults].
4. Optionally halve the CFL numbers (to 10/1) to increase stability.
5. Change the Monitor point output: Select relevant monitor points and add variables:
• QRAD
•Q
•T
• SOOT
6. Add 3D output variables:
• QRAD
•Q
•T
• PROD
• SOOT
7. Optionally change the DTPLOT settings.
8. Add an ignition region (e.g., +/-20m in all directions from the leak point)
9. Set the ignition time (e.g., to 0.1s after leak starts to ensure there is sufficient gas between LFL and UFL to ignite).
10. Optionally set the ignition duration above zero (e.g., to 0.15s).
11. Optionally reduce the simulation time if too long (fire simulations are slower and often achieve quasi-steady state sooner than dispersion simulations. Typical values for the maximum time can be 20s–120s).
12. For radiation, the default settings are normally fine, but in some cases it may be useful to change the behaviour, for example,
(a) DTM MOD TIME = 1 (DTM frequency: time period)
(b) DTPLOT = 1 (for videos showing radiation contours it is best to ensure DTM and other output (DTPLOT) have same frequency
(c) DTM MOD ITER = -1 (DTM frequency: iteration period)
to force DTM-recalculation and result data export once per simulated second. Setting the DTM MOD TIME and DTPLOT to the same value will synchronise the DTM calculations with the 3D output in the video and look best when visualising 3D radiation values in a video
The visualisation of flames and smoke has been greatly simplified in FLACS-CFD 21.3. with automatic defaults for both and it is recommended to use those settings.
For FLACS-CFD ventilation, dispersion and explosion simulations calculating times are a function of, among others, the number of grid cells, the time step length and the simulated duration. Fire simulations are very similar to dispersion simulations, however they take longer for the following reasons:
• smaller time steps and iterations per time step may be required to obtain a converged solution,
• the DTM ray tracing routines are an extra overhead,
For identical simulation durations; fire simulations will take longer to run than comparable dispersion simulations; typically about 1.2x to 10x longer. However, often the time of interest for fire simualation can be much shorter than for dispersion simulation (e.g. when only flame positio or quasi-steady state heat radiation results are needed), in which case the time to run simulations may still be less than for similiar dispersion simulations.
This section aims at giving a better understanding of the factors that influence calculation times and how changing various DTM settings will impact the calculation times and to lesser extent memory footprint. In most cases it should be possible to obtain accurate results with FLACS-Fire within a few hours, up to a few days for very large simulations.
Note:
The RADI DTMHy Total line in the FLACS CALL PROFILE section in the simulation log file shows total time and relative time used by the DTM routines. In cases where the DTM part of the calculation in the simulation takes a signigicant amount of time (e.g. more than 25%-50%, see note below) the following steps can be taken to reduce calculation time:
7.8.10.1 DTM Ray number
The time needed for the DTM part of the calculations, scales linarily with the number of rays defined in DTM _ RAYS setting in the cs-file. Fewer rays will result in coarser heat radiation results within the DTM domain (e.g. more flower pattern effect), but shorter calculation times. In most cases the default number of rays will be optimal.
7.8.10.2 DTM iteration frequency
The time needed for the DTM part of the calculations, scales linarily with the frequency of DTM calls in the DTM ITER or DTM TIME setting in the cs-file. Less frequent DTM iterstion rays will result in capcturing less of the dynamic behaviour of the flames, but shorter calculation times. In most cases the default number of DTM iterations will be optimal.
7.8.10.3 DTM Domain
The size of the DTM domain influences the calculatoin time signficiantly. With the default settings, the DTM domain size is automatically adjusted around the flame, this means that when the flame gets larger the time needed for the DTM calculations will also increase. When the DTM domain size has been set manually, reducing the DTM domain when possible will help reduce caluclation time.
7.8.10.4 Incompressible vs. Compressible
For most FLACS-Fire simulations there currently is very little benefit of using the incompressible solver. In addition, most of the validation has only been done for the compressible solver. It is therefore recommended to only use the compressible solver for fire simulations.
FLACS-Fire can limit the calculation of the DTM radiation model to only a part of the total simulation domain. This allows simulations to run much more quickly, and in combination with the optional far-field model generates smoother contours in the far field. For most scenarios, the default settings should give an optimal balance between calculation time and accuracy and validity of the results. However, in some cases you might wish to deviate from the default settings. Below is a summary of the relevant options and information for which situations they are most suitable. Note that these settings are only available when enabling the Advanced options in the radiation tab (right-click to enable).
Possible settings of DTM DOMAIN CONSTRAINTS:
• AUTOMATIC [default]: This is the default setting, it is suitable for most scenarios.
• AUTOMATIC MIN: This setting is identical to the automatic setting, but keeps the DTM domain bigger or equal to a user-defined minimum size in one or more dimensions. It can be used in situations where detailed DTM results are required in a specific region, independent of the position and shape of the flame. An application would be to define the module dimensions as the minimum DTM domain, to get more accurate radiation results on all the module walls and equipment. Another application could be to force using the DTM model for radiation calculation on the ground directly under the flame, especially upward vertical flames. You can achieve this by defining the grid cells directly above the ground in Z direction as the mimimum DTM domain. When defined like this, the automatic functionality will dynamically adjust the DTM domain in both the horizontal and upwards direction to optimize calculation times.
• FULL: By prescribing FULL, the DTM calculations will be carried out for the whole CFD domain. Simulations with the FULL setting will be much slower and use signicantly more memory than either of the automatic settings. Furthermore, you will likely have to increase the number of DTM rays to get sufficient resolution in the far field and limit the DTM ray effect; this will further increase the calculation time and memory footprint. FULL can be used for very complex or detailed geometries or for backwards compatibility with FLACS v10.5.
For both automatic settings, the DTM domain will be limited and the DTM ray effect reduced; typically 100 DTM rays will be sufficient.
FAR _ FIELD MODEL
• ENABLED [default]: When one of the automatic DTM domain constraint models has been selected, a far-field model can be used to calculate results outside the DTM domain. In most cases this is recommended and generally the required additional calculation time will be low.
• DISABLED: If the results in the far-field are not at all of interest (e.g. for an offshore platform) and the AUTOMATIC _ MIN setting is used to force DTM results in the areas of interest, the far field model can be disabled to reduce the calculation time and potentially reduce minor artefacts where the DTM and far field results overlap.
For a dispersion study following a leak in a process area, the main parameter is the size of the flammable gas cloud. To evaluate the hazard of a given gas cloud, Gexcon has developed methods for natural gas that aim at estimating an equivalent stoichiometric gas cloud with comparable explosion consequences; these methods have been developed in order to reduce the number of simulations that need to be carried out to do a risk study, and the principles should be applicable to other gasses as well. For uncongested explosions, the initial turbulence characteristics of the gas cloud are also important. Gexcon has therefore carefully determined the most appropriate values to use when describing the initial turbulence characteristics for an equivalent stoichiometric gas cloud, see Initial turbulence for the equivalent gas cloud.
The size of the equivalent stoichiometric gas cloud at the time of ignition is calculated as the amount of gas in the flammable range, weighted by the concentration dependency of the flame speed and expansion. For a scenario of high confinement, or a scenario where very high flame speeds (faster than the speed of sound in cold air) are expected (either large clouds or very congested situations), only expansion-based weighting is used (denoted as Q8). For most situations lower flame speeds are expected and the conservatism can be reduced. Here a weighting of reactivity and expansion is used (denoted as Q9). The definitions of the Q8 and Q9 equivalent volumes are given in Section Q8 and Q9 output.
The Q9 cloud is a scaling of the non-homogeneous gas cloud to a smaller stoichiometric gas cloud that is expected to give similar explosion loads as the original cloud (provided the shape and position of the cloud are chosen conservatively, as is the ignition point). This concept is useful for QRA studies with many simulations, and has been found to work reasonably well for safety studies involving natural gas releases (NORSOK, 2001).
The Q9 concept has also been applied to hydrogen systems for the FZK workshop experiments and has been found to give reasonably good predictions. Details can be found in (Middha et al., 2006; Middha et al., 2008).
As a practical guideline, it is recommended to choose the shape of the cloud such that it will give the maximum travel distance from the ignition location to the end of the cloud for smaller clouds. For larger clouds, end ignition scenarios with longer flame travel should also be investigated. The cloud should be made as a hexahedral box with assumed “planes of symmetry” towards confinement. The aspect ratio for a free cloud should be 1:1:1, for a cloud towards the ceiling 2:2:1, towards the ceiling and one sidewall 2:1:1, etc. For a free jet in a less confined situation, the jet momentum will usually dominate the mixing of the jet until the fuel concentration has become lean, unless the wind is very strong. The cloud should be assumed to be located a small distance downwind of the jet, if possible conservatively towards obstructions/walls. For highly buoyant gases such as hydrogen, it can always be assumed that a confined or semi-confined cloud is located near the ceiling or below any other horizontal confinement (a possible deviation from this may be large liquid hydrogen releases in hot and dry surroundings).
The initial turbulence conditions are likely to have a very small effect for strongly congested simulations since turbulence will be generated quickly by the geometery in the explosion region. However, for explosion scenarios with little congestion near the ignition location, it is important to describe the initial turbulence conditions appropriately. The settings in the table below are recommended if the turbulence characteristics of the gas cloud are not known (these are the default values for gas explosion simulations). The turbulence length scale is proportional to the diffusion of the cloud, so if it is set too high in the initial conditions then it is possible that parts of the cloud that are distant from the ignition will have dissipated before the combustion reaches them. It is therefore recommended that the initial turbulent length scale is not set to be higher than the default value, even in cases for which it is known to be higher in reality. The turbulence in a cloud that has some initial turbulence but has a characteristic velocity of 0 will reduce very quickly. It is therefore important that ignition happens immediately if it is intended that the cloud has turbulence when it is ignited (see Ignition of the equivalent gas cloud for details about setting the ignition appropriately).
Note that while 200 m/s is a reasonable estimate for the velocity of a jet release, FLACS-CFD is sensitive to the product of the characteristic velocty and the relative turbulence intensity, rather than to the characteristic velocity itself.
Table 7.4: Recommended intial turbulence settings for gas explosions.
|
Setting |
Value |
|
Characteristic velocity |
200 m/s |
|
Relative turbulence intensity |
0.3 |
|
Turbulence length scale |
0.05 |
These recommended settings were calibrated using data from three experiment campaigns, including 20 explosion experiments. The figure below compares the maximum pressure measured in the experiments with the maximum pressure that was simulated using a combined dispersion-explosion simulation, (this configuration is anticipated to achieve the most accurate simulation, see Combined dispersion and explosion simulations), and using two equivalent clouds: one using the previously recommended initial turbulence settings, and one using the new recommendations. The simulated pressures are co-located with the experiment measurement locations. The x-axis is the ratio of the maximum simulated pressure to the maximum measured pressure. Where FLACS-CFD underpredicts the maximum pressure, the ratio has a value less than one, and values greater than one represent overprediction. The y-axis shows the cumulative probability for the ratio. In previous releases of FLACS-CFD, it was recommended that the initial relative turbulence intensity and turbulence length scale be set to zero. This results in much higher probability of underprediction for the maximum pressure than when a combined dispersion-explosion simulation is run. When the new recommended values are used, the probability of underprediction is much lower and is similar to the probability for combined dispersion-explosion simulations.
When the results of a dispersion simulation are available, but a combined explosion-dispersion simulation is not (for example, if a dispersion simulation was used to calculate a cloud, which was then repositioned to simulate multiple explosion scenarios in different locations), then the initial turbulence conditions for the gas cloud can be read from the dispersion simulation output. The turbulence values will vary across the cloud, and gas explosion simulations in FLACS-CFD currently assume uniform initial turbulence conditions. In most cases, it is appropriate to set the initial turbulence for the explosion simulation to be equal to the maximum turbulence conditions from the dispersion simulation output, since this will result in the most conservative predictions.
A】三 qpqo」d ElBDlunu
Figure 7.31: A comparison of the maximum pressures measured in experiments with those from combined dispersion-explosion simulations ('Real cloud'), and from two equivalent cloud simulations, using the previously recommended settings, and the new recommendations. RTI and TL are the initial relative turbulence intensity and initial turbulence length scale, respectively.
For smaller clouds (the flame travels less than 1 m to the open boundary), ignition with maximum distance to the edges of the gas cloud is normally a conservative choice (for a cloud located in a corner, this means corner
ignition, not central ignition). This could be used to represent all scenarios. Alternatively, a distribution of several ignition points could be applied. For larger clouds, a homogenous distribution of ignition positions should be applied. It should be kept in mind that the gas clouds with the possibility of the longest flame travel are often the most dangerous ones.
For a quantitative explosion risk assessment the explosion simulations should be performed with various idealised clouds of variable size and typically using stoichiometric concentration. For the purpose of QRA, the distribution of ignition locations should be chosen to represent reality. If there are one or more highly likely ignition locations that dominate the ignition frequencies, these may be used. Otherwise, it should be assumed that a constant ignition source might lead to end ignition (where concentration reaches LFL), whereas intermittent ignition sources will be more arbitrarily distributed (with higher likelihood centrally in the cloud where concentrations are above LFL). For stratified clouds, end ignition will mean ignition in the lower end of the cloud.
Two ignition probabilities should generally be established (in case of hydrogen, the probability of spontaneous ignition should also be considered):
• P Iconst = ignition probability from constant ignition sources (per m3 that is exposed to flammable gas for the first time in the last 1 second)
• P Iintermittent = ignition probability for intermittent ignition sources (per m3 flammable volume and second)
From the CFD calculations, the volume of the gas cloud with concentration between LFL and UFL will give the volume that may be ignited if exposed to an intermittent ignition source. This information should thus be related to the intermittent ignition frequencies defined. In the case of constant ignition source, the Q6 output from FLACS-CFD (or similar from another CFD tool) gives the cloud volume that was exposed to flammable gas concentrations for the first time last second. This information should be combined with the probabilities for ignition by constant ignition sources. Thus for each time step (or each 1 s) for every dispersion calculation, the probability of ignition from spontaneous, intermittent and constant ignition sources should be established, and this probability should be added to a gas cloud size class (based on corresponding Q8, Q9 or a combination).
If the gas cloud becomes rich (in a well-mixed state, but more gas available than needed to fill the volume with stoichiometric concentration) this may be represented either as a stoichiometric cloud or as a rich cloud with a slightly higher reactivity than observed. This can be done by using the flammable volume to establish the volume of the cloud and the flammable mass to establish its concentration.
As described above, for scenarios with high confinement or scenarios where very high flame speeds can be achieved, one should use the Q8 value instead of Q9. To evaluate this, several cloud sizes can be simulated to identify a critical cloud size, Qcrit, for which the flame speeds exceed e.g., 200 m/s. For clouds with Q8 < Qcrit, the weighting procedure above can be applied. For clouds with Q8 > Qcrit, one should apply the Q8 cloud as representative cloud size. For vented rooms and other situations with a significant confinement, a weighting between Q8 and Q9 volumes is suggested.
If the ventilation or a high-momentum leak (jet) creates significant turbulence in the region where ignition is expected, this turbulence should be defined as an initial condition for the CFD solver, see Initial turbulence for the equivalent gas cloud for a description of the initial turbulence settings.
Further details of the approach and a discussion of potential issues can be found in (Hansen, 2011).
Fire evolution and structural response are interconnected, and therefore the output from fire simulations can be useful as input to software that compute structural response. Such tools, which are often based on the finite elements method (FEM), usually support import from several file formats, and the FLACS-CFD Python API documentation includes an example script for exporting data to one of these format, i.e. the Abaqus ”.imp” format.
The geometry is set up as usual for FLACS-CFD, and the Grid guidelines should be followed to ensure that the grid and geometry meet the recommendations for a blast scenario.
Monitor points are set in the same manner as for other FLACS-CFD simulations, however FLACS-Blast treats all porosities as either one or zero, so monitor points should not be placed in cells where the porosity is ≤ 0.5, see the blast section in Modelling and application limitations.
FLACS-Blast does not include pressure panels; to measure the pressure at walls, place monitor points between the cell centre and the adjacent wall (but not on the wall itself). The pressure measured at the monitor point will be the same as the pressure at the wall. Be aware that if the grid is refined it may be necessary to relocate the monitor points. Therefore, it is recommended that monitor points are positioned sufficiently close to the wall that they are located between the grid-cell centre and the wall for the finest expected grid resolution.
The default settings are appropriate for most cases. If numerical instability occurs – a rare occurrence – CFLC and CFLV may be reduced by a factor of 2. However, other possible reasons should be ruled out first. The maximum time should be set to a physical value. Usually 0.2 seconds is enough time to capture the history of the blast across the computational domain. Longer times may be required for very large domains.
The PLANE WAVE boundary condition must be used with the blast simulator. See the boundary conditions section for more details. The computational domain should be such that the total volume is about 100 times larger than the volume of the initial explosive “balloon”. It is recommended to perform a sensitivity analysis to verify that the solution is independent of the domain size.
The explosive charge is defined using the following parameters:
Table 7.5: Variables that define the explosive charge for a blast simulation.
|
Variable |
Description |
|
POSITION |
X, Y and Z locations of the explosive charge (centre of the “balloon”). |
|
WEIGHT |
Weight of the explosive charge in kg. |
|
CONFINEMENT |
Coordinate directions into which the blast will propagate from the initial high-pressure high-temperature region. Available options (= includes both + and - directions): +X, -X, =X +Y, -Y, =Y +Z, -Z, =Z For example, =X=Y=Z means the blast will propagate in the all directions. +X-Y means the blast will propagate in the +X and -Y directions only (i.e. the -X, +Y and Z directions are blocked). |
|
TYPE |
TNT or RDX. |
Note:
The scenario files for this example can be found in the doc/examples/ex06 blast directory of your FLACS-CFD installation.
7.11.6.1 Problem description
The blast effects of an explosion of 0.8 kg of TNT on two adjacent structures and surrounding areas are simulated using FLACS-Blast. The structures are represented by blocks of the size 2.3 m x 2.3 m x 2.3 m. The minimum x, y and z coordinates of structure 1 are -3.45, 1.15 and 0 respectively, and for structure 2 are
1.15, 1.15 and 0. The gap between the structures is therefore 2.3 m. The TNT explosive charge is located
approximately 1.1 m from structure 1. The geometric setup is presented in the figure below.
Figure 7.32: Geometry for the blast simulation.
7.11.6.2 Computational grid
The computational grid contains 1,046,032 cells. Cubical cells of 0.1 m x 0.1 m x 0.1m are used in the region where accurate results are required, and are stretched towards the boundaries.
7.11.6.3 Monitor points
Monitor points are defined at the following locations:
|
INSERT |
1 |
-2. |
29 |
3. |
46 |
1 |
.14 |
|
INSERT |
2 |
-2. |
29 |
3. |
46 |
0 |
.19 |
|
INSERT |
3 |
-1. |
14 |
2. |
29 |
0 |
.19 |
|
INSERT |
4 |
-2. |
29 |
1. |
14 |
1 |
.14 |
|
INSERT |
5 |
-2. |
29 |
1. |
14 |
0 |
.19 |
|
INSERT |
6 |
-3. |
46 |
2. |
29 |
1 |
.14 |
|
INSERT |
7 |
-3. |
46 |
2. |
29 |
0 |
.19 |
|
INSERT |
8 |
-2. |
29 |
2. |
29 |
2 |
.31 |
|
INSERT |
9 |
-3. |
24 |
1. |
14 |
0 |
.19 |
|
INSERT |
10 |
-3. |
46 |
1. |
36 |
0 |
.19 |
|
INSERT |
11 |
2. |
29 |
3. |
46 |
1 |
.14 |
|
INSERT |
12 |
2. |
29 |
3. |
46 |
0 |
.19 |
|
INSERT |
13 |
3. |
46 |
2. |
29 |
0 |
.19 |
|
INSERT |
14 |
2. |
29 |
1. |
14 |
1 |
.14 |
|
INSERT |
15 |
2. |
29 |
1. |
14 |
0 |
.19 |
|
INSERT |
16 |
1. |
14 |
2. |
29 |
1 |
.14 |
|
INSERT |
17 |
1. |
14 |
2. |
29 |
0 |
.19 |
|
INSERT |
18 |
2. |
29 |
2. |
29 |
2 |
.31 |
|
INSERT |
19 |
-0. |
01 |
-4. |
01 |
0 |
.01 |
|
INSERT |
20 |
-5. |
74 |
2. |
29 |
0 |
.01 |
|
INSERT |
21 |
-6. |
89 |
2. |
29 |
0 |
.01 |
At all monitor points, the following variables are recorded: NPMAX, NPMIN, NPTIMP, NP, NPIMP.
7.11.6.4 Single field 3D output
The following variables are recorded for the 3D output: NPIMPM, NPMAX, NPMIN, NPTIMP, NP, NPIMP, NVVEC, NU, NV, NW.
7.11.6.5 Simulation and output control settings
7.11.6.6 Boundary conditions
PLANE WAVE (default) is used on all boundaries.
7.11.6.7 Initial conditions
The default settings are used.
7.11.6.8 Explosive
|
POSITION |
-4.61 |
2.31 |
0.19 |
|
WEIGHT |
0.8 | ||
|
CONFINEMENT |
=X=Y=Z | ||
|
TYPE |
TNT |
7.11.6.9 Results
The pressure history for monitor points 6, 7 and 10 (front of the structure closest to the blast) are presented below. This region experiences the maximum impact of the explosion with overpressures of over 25 bar.
Figure 7.33: Pressure history for monitor points 6, 7
0 1 2 3 4 5
TIME (ms)
Run:100000
Var: Pressure
and 10.
The plots below show the pressure history on the top and back of the same pressures are under 1 bar.
structure. Here the maximum
^<-ro^^①」nss①」d
0
Run: 100000 Var: Pressure
-0.05
5
2 o.
o 2 o.
5 0 5 0
1 1 o o 0.0.0.0.
^<~ro^^①」nss①」d
0
Run: 100000 Var: Pressure
0.10
0.05
0.00
-0.05
-0.10
-MP 3
20
40 60 80 100
TIME (ms)
Figure 7.34: Pressure history for the top (left) and back (right) of structure 1.
Next, the pressure history on the sides of the same structure and for the monitor points located opposite to the structures are displayed. On the sides, the maximum pressure is under 1 bar, while monitor point 20 records a maximum overpressure of over 12 bar.
(6」(uq)①」nss①」j
0
-0.2
.86 o.o.
4 2 0 o.o.o.
5
20
10 15
TIME (ms)
0 1
Run:100000
Var: Pressure
Run:100000
Var: Pressure
Figure 7.35: Pressure history for the sides of structure 1 (left) and opposite the structures (right).
The results for monitor points on the structure behind the first box are shown below. The overpressures for this structure are considerably lower than for the first box, with a maximum level of just over 0.25 bar. This is consistent with the fact that this structure does not experience the full impact of the blast. Also the overpressures for locations on the side of the structures are shown below.
Figure 7.36: Pressure history for structure 2 (left) and on the side of the structures (right).
Finally, the pressure contours between 0 and 1 bar at 5 ms are presented, showing the shape and size of the blast wave.
Run:100000
Var: Pressure_3D (volume) Time: 0.005 —(1)
Figure 7.37: Illustration of the blast wave after 5 ms.
As noted in the section on the application areas of FLACS-CFD, it is important to be aware of assumptions and limitations that are inherent to the models used for simulating flow phenomena. This section identifies such characteristics for the FLACS-CFD software.
It is important to include sufficiently fine details in the geometry model, for a typical industrial installation or oil/gas rig on a scale of ∼ 100m typically down to about 1-inch piping and even smaller dimensions for pipe racks, cable trays, etc. For modern process plants, it is often possible to import the geometry model from existing computer aided design (CAD) models. However, for older facilities, or during the design phase of new ones, safety engineers must seek other solutions.
There are several known issues and inherent limitations associated with the representation of complex geometries in FLACS-CFD, including:
• It may not be straightforward to import a CAD model, since there can be issues with unit conversion, inclusion of non-physical objects (e.g. tags), etc. It is therefore important to verify the geometry model before running simulations.
• Import from CAD will normally not work well for internal geometries, i.e. inside process equipment, such as silos, mills, filters, pipes, ducts, etc.
• Rotated walls (i.e. not aligned with the coordinate axes) should be avoided, see the Note about non-orthogonal elements and general objects.
• Left difference always subtracts 100 %, even if non-zero porosity is defined.
• It is important to represent the vent openings of a semi-confined geometry properly. If FGC (Flacs Geometry Calculator) adjusts the position of objects close to the outer boundaries to match the grid, the effective vent area may be affected. You should check the representation of the vent openings by verifying the porosity using Flowvis.
• A unified mesh/primitive geometry model is stored in FLACS-CFD. It is important to verify that the geometry model and porosities are correct before starting simulations.
• FLACS has been validated for both primitive and mesh objects. However, each are treated slightly different in FGC, so results with each approach will be similar but may not give exactly the same results.
• FGC does not move large mesh objects to grid lines, which may cause additional differences. It is important to verify porosities especially for large mesh objects that should be closed.
There are several known issues and limitations associated with the simulation of release and dispersion scenarios in FLACS-CFD and FLACS-Dispersion:
• With the achievable grid resolution in a typical FLACS-CFD simulation, it is not possible to resolve all details of complex release scenarios, such as high-momentum compressible jets or flashing liquid releases. For this reason, FLACS-CFD includes utility programs that allow such releases to be represented as pseudo sources:
– Jet utility program,
– Flash utility program.
• Scenarios with an unstable atmosphere (Pasquill classes A-C) are more sensitive to the choice of time step (CFL number) than scenarios with a stable atmosphere (Pasquill classes D-F). It is recommended to use the (usually) slightly more conservative Pasquill class D rather than classes A-C. Note, in some cases Pasquill class D is not more conservative than class A. For example, a horizontal passive release at a certain elevation could r each ground level if released in unstable atmosphere (A), while not in neutral atmosphere (D), since turbulence in the plume is higher for an unstable atmosphere.
• When using the wind boundary condition, it is recommended to place the area of interest at a significant distance from the inflow/outflow boundaries.
• In Flacs2, the aerodynamic roughness variable (GROUND ROUGHNESS) defines the wind profile at wind boundaries, while the ground is modelled as a smooth surface. In cases of high aerodynamic roughness or long upwind distances, it is recommended to compare wind velocity profiles just before the obstructed region with the profile at the upwind wind boundary condition. If these differ significantly, then artificial roughness blocks, defined as an array of cuboids at terrain level, can be used to mimic real roughness. In flacscfd, the aerodynamic roughness variable (GROUND ROUGHNESS) is used at solid wall boundaries corresponding to the surface defined by the terrain. The aerodynamic roughness determines the velocity and turbulence characteristics at the near-wall control volumes (see Rough wall boundary).
• Flacs uses the standard RANS k-epsilon CFD model, which assumes isotropic turbulence (e.g. turbulence is the same in X, Y, and Z direction) and therefore cannot differentiate turbulence in vertical direction separately from turbulence in the other directions. This unfortunately means it is not ideal for calculating verical turbulence for helideck studies (e.g. the vertical turbulence criterion in CAP 437). In most cases using Flacs will be too conservative (although underprecition is theoretically also possible) and result in a much lower calculated availability for helicopter operations.
• Numerical stability (mass residual) can be an issue for certain dispersion simulations, and you may resort to various measures for removing the problem.
• The jet utility program does not provide any warning when scenario conditions differ from the assumptions that are implicit to the model. The solution calculated from the utility program represents one of several possible leak scenarios from a high-pressure reservoir: reversible adiabatic (i.e., isentropic) flow of an ideal gas from a reservoir via choked flow in the aperture; irreversible adiabatic
(i.e., non-isentropic) expansion (over-expanded jet) without air entrainment; or expansion over a normal shock to ambient pressure. These assumptions are not appropriate for very high reservoir pressures and/or temperatures, or for particle- or droplet-laden flows.
• The jet utility program should not be used for pipeline releases, for combinations of vessels and pipelines, or for liquid releases.
• The flash utility program calculates a source term after all droplets have evaporated, assuming no impingement.
• The flash program, as well as the pool model, does not account for preferential evaporation from multi-component mixtures.
• FLACS-CFD does not represent oblique jets particularly well.
• If the flow rate of a leak is specified as velocity (not mass flow) for the FAN and SUCTION features, the mass flow rate is calculated from the molecular weight of fuel rather than air.
• Since flammability limits and other combustion properties are not implemented individually for toxic species, simulations with toxic species are limited to toxicity analysis.
• Since thermodynamic properties are not implemented individually for toxic species, simulations with toxic species are limited to scenarios with no temperature differences or scenarios characterised by temperature differences but low toxic concentration (i.e. typically less than 5 vol % - 10 vol % toxic at the source).
• Laminar flows: laminar viscosity is fixed and defined by the parameter AMUL, irrespective of the species selected in the scenario. Simulation of laminar flows require setting a proper value a AMUL using KEYS in the scenario file (see Special control keys). Modelling laminar flow is not very common, an example would be low momentum releases at zero wind speed.
• Liquid pools are modelled as a two-dimensional surface which means it is not possible for the pool to occupy the same horizontal position at two different vertical levels (circumstance that can happen when the pool overflow from one level to another lower level), for more information see Setting the pool position. To overcome this restriction, in some cases it is possible to replace the evaporative release from a pool with an area leak covering the expected pool surface.
• Complex terrain is represented in the Cartesian grid adopted by FLACS-CFD as a series of solid blocks, as explained in the Terrain import section. Simulation of stratified flows, including dense gases and liquid pools, may therefore be inaccurate in complex terrain. Checking results with grid sensitivity is recommended.
• For time varying leaks (for example resulting from depressurization of reservoirs), there are additional requirements for leak type and grid refinement. For more information see Time varying leaks and the grid recommendations sections.
• FLACS-CFD relies on empirical values for the lower (LFL), upper flammability limits (UFL) and laminar burning velocities and these may not be accurate in all cases (e.g. mixtures and different initial conditions). In addition, the LFL value for Propylene and the UFL values for Acetylene, Ethylene and H2S in FLACS-CFD deviate significantly from the typical values found in literature (Lide, 2007) and are non conservative. For more details and potential impact on results see entry on LFL and UFL calculation in Gas explosions limitations.
• The default transparency settings in the Flowvis 3D plot may not be suitable for all types of visualisation. For example when visualising exact flammability or toxic limits, it is recommended to disable result transparency, use the 3D isosurface option or use the 3D (projected) surface option or visualise in a 2D plot instead.
• The Pool evaporation model was primarily developed and validated for liquified natural gas (LNG) modelling. It may therefore be less suitable for modelling other liquid types, especially when the liquid properties are very different to LNG (e.g. LH2 or gasoline).
There are several inherent limitations and important guidelines associated with the simulation of gas explosion scenarios in FLACS-CFD and FLACS-GasEx, including:
• It is recommended to follow the current grid recommendations for all explosion simulations. In particular, it is important to note that applying a grid spacing of 1 cm or less in an explosion simulation is not recommended. Due to the nature of the sub-grid models in FLACS-CFD, convergence of results with increasing spatial or temporal resolution cannot be expected for gas explosion simulations.
• FLACS-CFD tends to underpredict the explosion pressure in unconfined congested geometries, particularly for explosion experiments featuring very high flame speeds, approaching the detonation regime. FLACS-CFD does not model the actual detonation phenomenon, but will give an indication of whether a DDT (deflagration-to-detonation transition) is likely.
• FLACS-CFD may over-predict the explosion pressure in the acceptor region for typical ‘safety gap’ studies (Gexcon, 2013).
• FLACS-CFD relies on empirical values for the lower (LFL), upper flammability limits (UFL) and laminar burning velocities. The Le Chatelier’s mixing rule is used to calculate flammability limits for mixtures. In addition, FLACS-CFD includes an alternative mixing model that uses a seperate lookup table for hydrogen-nitrogen mixtures which is used for pure hydrogen/nitrogen mixtures. Errors in the flammability limits or laminar burning velocities, could result in inaccurate results, especially in calculated flammable and equivalent stoichiometric cloud volumes and explosion overpressures. When using mixtures (including inert) or custom species, it is important to verify key composition parameters reported in the log file, such as Molecular Weight (MW), LFL and UFL, are correct. For more information see the sections on hydrogen-nitrogen mixtures and Inert gas definition. In the following situations the calculated flammability limits may not be correct:
– For mixed fuels especially at elevated pressures and/or temperatures.
– For ”initial pressures significantly below 1 atmosphere”.
– Mixtures with hydrogen, nitrogen and at least one more additional flammable or inert gas
– For flammable mixtures with an oxygen content in the atmosphere that is significantly higher or lower than the standard atmospheric composition (20.95 vol% oxygen, 79.05 vol% nitrogen).
– For fuels with high concentrations of Propylene, Acetylene, Ethylene or H2S.
For further guidance and possible workarounds contact FLACS-CFD support.
• The quasi-laminar burning velocity predicted by FLACS-CFD may be too high when simulating explosions in narrow channels and pipes.
• When simulating explosions in small enclosures (volume less than 1–2 m3) and narrow channels and pipes, and especially for mixtures with relatively low reactivity, it is important to activate the FLACS-CFD submodels that account for radiative heat losses.
• FLACS-CFD does not simulate the effect of acoustic instabilities, which may dominate the explosion pressure for certain scenarios involving vented empty enclosures. However, obstructions, irregular surfaces and absorbing material (often present in real applications) will significantly decrease the importance of acoustic instabilities. Further details can be found in, e.g., (Bauwens et al., 2010; Pedersen & Middha, 2012; Bauwens & Dorofeev, 2013).
• Some scenarios are particularly sensitive to the initially defined turbulence level. If a modelled gas cloud is likely to be turbulent prior to ignition, this should be set in the initial conditions, as it may be important for the severity of the subsequent explosion. See the sections on initial turbulence parameters: characteristic velocity, relative turbulence intensity, and turbulence length scale. More details about setting the initial turbulence conditions are provided in Initial turbulence for the equivalent gas cloud
• Although quenching due to high turbulence levels provides an upper limit to the burning velocity in FLACS-CFD, the current burning velocity model does not incorporate a parabolic dependency of the turbulent burning velocity on the rms turbulent velocity fluctuation. Hence, for applications where a high turbulence level is expected to quench the flame, the burning velocity in FLACS-CFD may be overpredicted (Arntzen, 1998).
FLACS-Hydrogen is a CFD-code for simulating dispersion and explosion scenarios with hydrogen gas in complex geometries. All functionality of FLACS-Hydrogen can be found in the full FLACS-CFD package. Important changes regarding the hydrogen combustion properties:
• Modified laminar burning velocity curve, LFL has been reduced to 4%.
• Adjustment to include the effect of the Lewis number (more than normal wrinkling on lean concentrations, less than normal wrinkling on rich concentrations).
• Stronger enhancement due to flame wrinkling (3.5 times increase in burning velocity with distance from the ignition point at stoichiometric concentration).
These changes result from extensive validation including the following experiments:
• 20m diameter hemispherical hydrogen cloud (large-scale laminar flames)
• 1.4m small-scale channel (different baffles, gas concentration, ignition location)
• 3D corner small-scale pipe arrays (different congestion, gas concentration, ignition)
• 30m tunnel FLAME facility (different venting, baffles, gas concentration)
Based on these simulation results, the performance of FLACS-CFD simulating hydrogen is considered comparable to what is generally seen when simulating other gases.
The dynamic viscosity for hydrogen in FLACS-CFD with default settings may be somewhat too high. This will only be important in situations with absolutely no turbulence, e.g., in closed vessels with no ventilation and weak temperature gradients. Upon discovery of this issue it was decided not to change the default values; instead it has been made possible to define the constant for dynamic viscosity manually in a setup-file or using the KEYS field in the scenario file. The default constant for dynamic laminar viscosity in FLACS-CFD is 2.0e-5, a more appropriate value is 0.6e-5. If needed, it may be changed using a setup file, as shown below:
VERSION 1.1
$SETUP
KEYS="AMUL=Y:0.6e-5"
$END
A sensitivity study has shown that simulation results usually are relatively insensitive to changing AMUL. Regarding time stepping when simulating hydrogen, the standard guidelines should be applied, i.e. CLFC=5 and CFLV=0.5
FLACS includes a model for predicting overpressures after transition to detonation. For hydrogen this transition is automatically triggered based on the DPDX criterion. For other gasses, where detonation is less likely, it must be enabled manually by the user. The following should be noted:
• The automatic detonation transition criterion has been selected based on available hydrogen validation cases to best balance false negatives and false positives, with slight conservative bias to prevent false negatives;
• Less validation data is available for DDT transition of other gasses and those results are therefore more uncertain;
• FLACS does not fully resolve the detonation shockwave, but uses an engineering model to correct for this.
There are several inherent limitations and important guidelines associated with the simulation of jet and pool fires in FLACS-Fire, including:
• FLACS-Fire may under predict flame lift-off length for jet fires. For more information see section on underprediction of lift-off flame length.
• FLACS-Fire may overpredict flame buoyancy for horizontal hydrogen jet flames. In most cases the overprediction is modest.
• FLACS-Fire by default uses a different radiation model for the near field (DTM) zone and far field zone. In the overlapping area the results are merged and may occasionally result in some minor artefacts when visualising.
• FLACS-Fire may significantly overpredict (up to 2.5 times) far field radiative heat flux for monitor points which are closest and in line with non-impinging jet fires. As the far field radiative heat flux results are combined with the DTM radiative heat flux results by default, this may also cause overprediction in the non far-field radiative heat flux and total heat flux output variables. For these type of cases, it is recommended to expand the DTM domain to cover the volume of interest and disable the far field radiation model, which will mitigate this issue.
• The limitations in the pool-fire model are similiar to the limitations in the regular pool evapora-tion/dispersion model, for more information see section on dispersion limitations.
• The pool-fire model has been validated for a modest range of scenarios, however the validation is much more limited than for jet-fires, dispersion and gas explosion scenarios. When running pool-fire simulations, it is therefore recommended to do additional simulations to assess grid sensitivity and carefully review results.
There are several known issues and inherent limitations associated with the simulation of dust explosion scenarios with FLACS-DustEx, including:
• It is recommended to follow the current grid recommendations for all explosion simulations.
• The modelling approach in FLACS-CFD DustEx is limited to organic materials with a size-corrected rate of pressure rise (KSt value) exceeding 100–120 bar m/s.
• FLACS-DustEx includes a simple model for dust lifting (Skjold, 2007b; Skjold et al., 2007), but the model requires empirical input, and does not account for phenomena such as dust settling, separation processes in cyclones, etc.
• The results obtained for vented explosion scenarios tend to be quite grid dependent, and Gexcon recommends comparing model results with experimental results obtained with a similar dust (composition and reactivity) in experiments at similar scale.
• The results can be very sensitive to small changes in the initial conditions (Skjold, 2010).
• Validation of FLACS-DustEx is so far limited to using standard, atmospheric, oxygen fraction in air (not validated for reduced or increased oxygen content, different from standard air).
In addition to the above limitations for FLACS-CFD, the following further limitations should be taken into account when simulating blast wave propagation with FLACS-Blast:
• FLACS-Blast does not simulate fragments.
• It is not possible to use panels with the Euler solver.
• FLACS-Blast does not account for the afterburning of expanding explosion products.
• FLACS-Blast treats porosities as binary, so any partial porosities are rounded to either zero or one. Cells with porosity = 0.5 are therefore ambiguous, and it is not recommended to position monitor points in cells with porosity ≤ 0.5 since these will be treated as fully blocked in FLACS-Blast.
The models included in FLACS-Blast work well for far-field blast propagation; near-field results and internal explosions may be unreliable.
Regarding far-field blast simulations with FLACS-CFD, Hansen et al. (2010) and Hansen & Johnson (2014) suggested a method to improve the preservation of the form of the pressure wave by a suitably timed reduction of the time step. Typically this will require a simulation with the normal time step first, and the total simulation time will be increased by a factor 4-5. Gexcon has compared the results using the proposed method with the multi-energy curves from TNO; while the pressure predictions in the far-field tend to be improved, the form of the curves is still quite different. When applying the method, one has to be careful not to reduce the time step before the pressure wave has left the flame front, as this can affect the combustion rate and change the source pressure.
Some inherent inaccuracy will be introduced by the representation of imported terrain as blocks on the Cartesian grid. Primarily this will contribute to the generation of additional artificial turbulence near the ground. In addition, the stepped representation of the ground surface can affect the dispersion of vertically stratified flows resulting from the release of dense gases.
7.12.9.1 Dispersion
For gas dispersion the artificial turbulence will increase mixing and diffusion near the ground and thus reduce calculated dispersion results, especially in the far field (e.g., > 100 m-200 m from the release). This effect is expected to be strongest for dense plume/jet dispersion (where negative buoyancy forces dominate) with the gas cloud flowing close to the terrain level. In addition, in vertically stratified flows, the stepped representation of the terrain surface may enhance the separation of cloud layers with different densities leading to an artificial confinement of denser layers. Fewer issues are expected for passive plume/jet dispersion (where the release momentum and ambient turbulence dominate the dispersion) or for positively buoyant plume/jet dispersion. It is therefore recommended to use a terrain to represent to the ground surface for passive dispersion scenarios, but, until further validation is done, it is recommended that terrains are used with caution when simulating the active dispersion of dense gases, and a grid sensitivity study is generally advisable. To determine if a plume of dense gas is passive or active, typically one of the variations of the Richardson number can be used. For full scale dense gas dispersion where the source momentum is unimportant (e.g., pool evaporation), the following criterion for passive plumes can be used (Britter, 1988):
Uref— > 6 g’0・q0 6,
(7.2)
D
where, Uref [m/s] is the wind speed at 10 m height, g’o = g (pgas - Pair)/pair [m/s2] is the reduced gravity, and D [m] is the characteristic horizontal dimension of the leak or pool.
Note that this criterion is relatively strict, so most pool dispersion scenarios will be classified as active.
For dense jets, mixing is triggered by the release momentum instead of the ambient wind. In these cases, the densimetric Froude number replaces the Richardson number in the definition of passive conditions:
Uleak
(7.3)
VgVD ,
where, Uieak [m/s] is the leak velocity, g’o = g (Pgas — Pair)/Pair [m/s2] is the reduced gravity, and D [m] is the diameter of the jet.
It is recommended to use a relatively fine vertical grid resolution Az (e.g. 20 cm - 50 cm) near the imported terrain and a corresponding horizontal resolution Ax < Az/sx and Ay < Az/sy based on the local slopes sx and sy , respectively, in the x and y directions. For further recommendations regarding grid resolution, see grid bestpractice. In line with the existing dense gas dispersion recommendation, it is also recommended to model dispersion over terrain with a maximum slope of 10° only.
7.12.9.2 Explosion and fire
For explosion and fire simulations no significant issues are expected for the terrain functionality. However, for deflagrations where the gas cloud is on top of a terrain, a slight increase in explosion overpressures is expected due to the additional artificial turbulence over the terrain, but this effect is expected to be very modest. For fire simulations, the box approximation of the terrain may influence the radiation pattern and may result in local over- or under-estimation.
FLACS-CFD v22.2 User’s Manual
GEXCON